elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


  Mostrar Mensajes
Páginas: 1 ... 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 [58] 59 60 61 62 63 64 65 66 67 68 69 70 71 72
571  Programación / PHP / Re: Problema con variables y AJAX !! en: 13 Agosto 2008, 17:15 pm
Ya realize la prueba armando el SELECT de AJAX sin consultar la BDD, realizando directamente la generacion de 3 options, y aun asi No se envia esa variable :S !!...

Aqui el code que modifique:

AJAX.PHP
Código
  1. <?php
  2. else if( !strcmp( $_GET["mov"], "mostrar_paises") )
  3. {
  4. echo "Paises: <select name=\"pais\">";
  5. echo "<option value=\"error\"></option>";
  6. echo "<option value=\"pais\">Pais</option>";
  7. echo "<option value=\"pais2\">Pais2</option>";
  8. echo "<option value=\"pais3\">Pais3</option>";
  9. echo "<option value=\"pais4\">Pais4</option>";
  10. echo "</select><br>";
  11. }
  12. ?>
572  Programación / PHP / Re: Duda con Remote File Disclosure en: 13 Agosto 2008, 16:26 pm
Hola buenas.

¿De que manera podría parchear un Remote File Disclosure?
Ejemplo código:

Código
  1. <?php
  2.  
  3. $filename = $_GET['filename'];
  4. $fp = fopen($filename, 'r');
  5. $doc = fread($fp, filesize($file));
  6. echo $doc;
  7.  
  8. ?>

Con este tipo de fallo el atacante podría leer cualquier archivo de texto plano:
http://localhost/archivovulnerable.php?filename=/etc/group

¿Qué formas habría de solucionar este fallo?

Salu2

Pues la solucion depende de lo que quieres hacer con tu script, por ejemplo:

Digamos que ese script lo quieres para leer un datos o varios datos dentro del mismo directorio donde trabaja el script con la finalidad de obtener informacion que has ido resguardando, entonces solo utilizas un strchr(); para verificar la existencia de un caracter, de modo que evitas la existencia de carateres como '/'. Por otro lado si vas a leer archivos (sin saber el nombre) de un directorio en especifico, pues vuleves a utilizar strchr() para verificar que exista el nombre del directorio dentro del valor $_GET[].

Todo seria en cuestion de: Que quieres que haga ese script ?....

bye bye

Código
  1. <?php
  2. function seguridad_archivos( $archivo )
  3.     {
  4.     //aqui pondremos todas las comparaciones que debe pasar la variable
  5.     //strchr() es igual que stristr(), solo que stristr() ignora si son mayusculas o minusculas
  6.  
  7.     //en el caso que leamos del directorio actual, sin movernos, asi que no debera existir un /
  8.     if( stristr( $archivo, '/' ) )
  9.          return 0; //no pasa
  10.  
  11.     //esta seria en caso que deseamos leer de un directorio unicamente
  12.     //oviamente no utilizariamos el condicional anterior xD
  13.     else if( !stristr( $archivo, "carpeta/") )
  14.          return 0; //no paso
  15.  
  16.     return 1; //si paso
  17.     }
  18.  
  19. if( seguridad_archivos($_GET['filename']) )
  20.     {
  21.     $filename = $_GET['filename'];
  22.     $fp = fopen($filename, 'r');
  23.     $doc = fread($fp, filesize($file));
  24.     echo $doc;
  25.     }
  26. else
  27.     echo "Anti-Hack Activado jejejej :P";
  28.  
  29. ?>
573  Programación / PHP / Re: Problema con variables y AJAX !! en: 13 Agosto 2008, 00:18 am
Lo eh revisado , solo modifique la parte como cargas los combos (no use una bd , coloque valores x defecto) y funciona de lo mas normal .

Recuerdo que en una oportunidad me paso algo asi , agregaba campos a un form mediante ajax , y luego al enviar el form estos no pasaban , creo que esto va por un tema de browsers lo eh probado en firefox 2.0 y en el IE 6.0 para linux y me va bien.

No eh probado en ie7 ni en el ie6 de windows .

Como te digo a mi me va bien , lo tienes en linea? .
Que browser usas?.

Tal vez si me agregas al gmail podamos ver mejor el problema.

Saludos¡¡

Se te paso darme tu correo :S, o sera: alone-in-the-chat@gmail.com ??...

Regresando con el tema...

Entonces a tu te funciono de lo mas normal ??, pero weno, en tu caso usaste valores generados sin la BDD, pero weno, la vdd no he realizado asi la prueba ya que en mi caso pues me intersa consultar a la BDD para obtener los valores xD !! (ya que son muchos como para escirbirlos uno a uno).

Por otro lado, actualmente programo de forma local con Apache como Servidor HTTP, Firefox 3 como navegador y Gentoo Linux mi GNU/Linux.

 
574  Programación / PHP / Re: Problema con variables y AJAX !! en: 12 Agosto 2008, 18:23 pm
Eh probado el segundo y funciona bien , puedes postear tu codigo.

El que utilizas tu , al que esta arriba le falta el archivo js.

Cosa que lo puedo chekar .


Saludos¡¡



He editado el primer post agregando el scrip.js !! Porfavor miralo, gracias por tu atencion !!

bye bye
575  Programación / PHP / Re: Problema con variables y AJAX !! en: 12 Agosto 2008, 17:04 pm
Mira esto a ver si te sirve:
http://www.formatoweb.com.ar/ajax/select_dependientes_3_niveles.php

Por cierto que yo quiero saber como obtener el value de un select o mejor dicho del option :P
No he podido me toco usar 'radio' en mi web :xD

Aqui tengo un ejemplo que SI funciona, vaya, que ilustra lo que quiero hacer en mi formulario, pero no lo logro :S !!...

Miren el codigo:

INDEX.PHP
Código
  1. <html>
  2.  
  3. <head>
  4.  
  5. <script src="funciones.js"></script>
  6.  
  7. <title>Documento sin t&iacute;tulo</title>
  8.  
  9. </head>
  10.  
  11.  
  12.  
  13. <body>
  14.  
  15. <form name="formulario" method="post" action="#">
  16.  
  17. <table>
  18.  
  19. <tr>
  20.  
  21. <td>Caracteres</td>
  22.  
  23. <td><select name="combo" onkeypress="tabular(event,this)" onchange="agregarCombo(this.value,'agregarCombo','akiEscriboAjax')">
  24.  
  25. <option value="">Select...</option>
  26.  
  27. <option value="Letras">Letras</option>
  28.  
  29. <option value="Numeros">Numeros</option>
  30.  
  31. </select></td>
  32.  
  33. </tr>
  34.  
  35. <tr>
  36.  
  37. <td><div id='akiEscriboAjax'></div></td>
  38.  
  39. </tr>
  40.  
  41. <tr>
  42.  
  43. <td><input name="enviar" type="submit" value=" Enviar" /></td>
  44.  
  45. </tr>
  46.  
  47. </table>
  48.  
  49. </form>
  50.  
  51.  
  52.  
  53. <?
  54.  
  55. if(isset($_POST['combo']))
  56.  
  57. {
  58.  
  59. echo "Variable Post creada con AJAX: ".$_POST["caracteres"];
  60.  
  61. }
  62.  
  63. ?>
  64.  
  65.  
  66.  
  67. </body>
  68.  
  69. </html>
  70.  

AJAX.PHP
Código
  1. <?
  2.  
  3.  
  4.  
  5. if($_GET['Id'] == 'agregarCombo')
  6.  
  7. {
  8.  
  9. if($_GET['caracter'] == 'Letras')
  10.  
  11. {
  12.  
  13. $array = array('a','b','c');
  14.  
  15. }
  16.  
  17. elseif($_GET['caracter'] == 'Numeros')
  18.  
  19. {
  20.  
  21. $array = array(1,2,3);
  22.  
  23. }
  24.  
  25.  
  26.  
  27. echo $_GET['caracter']." ";
  28.  
  29. echo "<select name='caracteres'>";
  30.  
  31. for ($i=0; $i<count($array); $i++)
  32.  
  33. {
  34.  
  35. echo "<option value='$array[$i]'>$array[$i]</option>";
  36.  
  37. }
  38.  
  39. echo "</select>";
  40.  
  41. }
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49. ?>

SCRIPT.js
Código
  1. // javascript Document
  2.  
  3.  
  4.  
  5. var peticion = false;
  6.  
  7. var  testPasado = false;
  8.  
  9. try {
  10.  
  11.  peticion = new XMLHttpRequest();
  12.  
  13.  } catch (trymicrosoft) {
  14.  
  15.  try {
  16.  
  17.  peticion = new ActiveXObject("Msxml2.XMLHTTP");
  18.  
  19.  } catch (othermicrosoft) {
  20.  
  21.  try {
  22.  
  23.  peticion = new ActiveXObject("Microsoft.XMLHTTP");
  24.  
  25.  } catch (failed) {
  26.  
  27.  peticion = false;
  28.  
  29.  }
  30.  
  31.  }
  32.  
  33. }
  34.  
  35. if (!peticion)
  36.  
  37. alert("ERROR AL INICIALIZAR!");
  38.  
  39.  
  40.  
  41. function agregarCombo(caracter,Id,element)
  42.  
  43. {
  44.  
  45. element = document.getElementById(element)
  46.  
  47. var url = 'ajax.php?Id='+Id+'&caracter='+caracter;  //construimos la url definitiva
  48.  
  49.    peticion.open("GET", url);
  50.  
  51. peticion.onreadystatechange = function()
  52.  
  53. {
  54.  
  55.        if (peticion.readyState == 4)
  56.  
  57. {
  58.  
  59. element.innerHTML = peticion.responseText;
  60.  
  61.        }
  62.  
  63.    }  
  64.  
  65.   peticion.send(null);
  66.  
  67. }
  68.  
  69.  
576  Programación / PHP / Problema con variables y AJAX !! en: 7 Agosto 2008, 01:38 am
POST EDITADO (13 Agosto 08)
Hola:

Cierta parte de mi aplicacion trata de Agregar Productos a la BDD, para esto el formulario es cargado desde el mismo INDEX.PHP, de modo que parte importante del formulario es poder ubicar en una sección de alguna Categoria existente, he aqui donde entra la ayuda de AJAX.

Basicamente AJAX me ayudara a generar rapidamente (sin refrescar la hoja) un nuevo select en donde estaran las Secciones, para esto en el select de las Categorias colocare la funcion de ajax mediante onchange. Esto no me trae ningun problema, ya que una vez seleccionada la Categoria del select, inmediatamente se carga otro select con las Secciones correspondientes a dicha Categoria elejida.

El Problema surge al enviar el formulario (presionar el botn enviar), este boton realiza una accion del formulario enviando todo hacia la direccion index.php?id=productos&mov=agregar_producto, vaya esto ya es puro PHP, AJAX solo nos ayudo a generar el SELECT de Secciones, asi que, al momento de ir a agregar_producto, no logro recepcionar el contenido del select generado con ajax.

Basicamente aqui utilizo dos select que son: Categorias y Secciones, la variable donde porto el contenido de Categorias es categoria_productos y la variable donde porto las Secciones son: seccion_producto.

De modo que $_POST["seccion_producto"] no se genera o nose que sucede :S, pero no obtengo el valor de dicha variable.

Utilizo Gentoo Linux, Apache y Firefox-3.

Para una mejor ilustracion aqui dejo mi codigo resumido:

INDEX.PHP
Código
  1. <?php
  2. switch( $_GET["mov"] )
  3. {
  4. case 'agregar_producto':
  5. echo "Categoria: ". $_POST["categoria_producto"];
  6. echo "<br>sección: ". $_POST["seccion_producto"];
  7. echo "<br>POST: ". count($_POST);
  8. echo "<br>";
  9. print_f($_POST);
  10. break;
  11. default:
  12. echo "<form action=\"index.php?id=". $_GET["id"]. "&mov=agregar_producto\" method=\"POST\" enctype=\"multipart/form-data\">";
  13. echo "<div id=\"formulario_producto_nuevo\">";
  14. echo "Tipo de Prod.: <input type=\"radio\" name=\"tipo_producto\" value=\"1\" checked onclick=\"cargar_datos( 'id=". $_GET["id"]. "&mov=agregar_producto', 'formulario_producto_nuevo_lista', 'GET', '0' );\"> Normal";
  15. echo "<input type=\"radio\" name=\"tipo_producto\" value=\"2\" onclick=\"cargar_datos( 'id=". $_GET["id"]. "&mov=agregar_producto&ver=1', 'formulario_producto_nuevo_lista', 'GET', '0' );\">Kit<br>";
  16. echo "ID: <input type=\"text\" name=\"id_producto\"><br>";
  17. echo "Cantidad: <input type=\"text\" name=\"cantidad_producto\" style=\"width:50px;\"> ";
  18. echo "<select name=\"unidad_medida_producto\" style=\"width:120px;\">";
  19. echo "<option value=\"error\"></option>";
  20.  
  21. $cons= consultar_enorden( "UNIDADES_MEDIDA", "ID" );
  22. while( $buf= mysql_fetch_array($cons) )
  23. echo "<option>". $buf["NOMBRE"]. "/". $buf["NOTACION"]. "</option>";
  24. unset($buf);
  25. unset($cons);
  26. echo "</select>";
  27. echo "<br>";
  28. echo "Nombre del Prod.: <input type=\"text\" name=\"nombre_producto\"><br>";
  29. echo "Precio Publico: <input type=\"text\" name=\"preciopublico_producto\"><br>";
  30. echo "Categoria: <select name=\"categoria_producto\" onchange=\"cargar_datos( 'id=". $_GET["id"]. "&mov=mostrar_secciones&categoria_id='+this.value, 'mostrar_secciones', 'GET', '0' );\">";
  31. echo "<option value=\"error\"></option>";
  32.  
  33. $cons= consultar_enorden( "MENUS", "ID" );
  34. while( $buf= mysql_fetch_array($cons) )
  35. echo "<option value=\"". $buf["ID"]. "\">". $buf["NOMBRE"]. "</option>";
  36. unset($buf);
  37. unset($cons);
  38.  
  39. echo "</select>";
  40. echo "<div id=\"mostrar_secciones\"></div>";
  41. echo "Descripcion:<br>";
  42. echo "<textarea name=\"descripcion_producto\"></textarea><br>";
  43. echo "<span style=\"font-size:10px;\">Solo se permite adjuntar imagenes: <b>*.jpg</b>, <b>*.png</b> y <b>*.gif</b>.</span>";
  44. echo "<div id=\"formulario_producto_nuevo_imagenes\">";
  45. echo "<input type=\"file\" name=\"imagen_productos01\" style=\"font-size:9px;\">";
  46. echo "<input type=\"file\" name=\"imagen_productos02\" style=\"font-size:9px;\">";
  47. echo "</div>";
  48. echo "</div>";
  49.  
  50. echo "<div id=\"formulario_producto_nuevo_lista\">";
  51. echo "</div>";
  52. echo "<center>";
  53. echo "<input type=\"submit\" value=\"Guardar Producto\" style=\"text-align:center;border:solid 1px black;font-family:verdana;font-size:12px;font-weight:bold;\">";
  54. echo "</center>";
  55. echo "</form>";
  56. break;
  57. }
  58. ?>


AJAX.PHP
Código
  1. <?php
  2. /*####################################
  3. ###### MOSTRAR SECCIONES #####
  4. ## Muestra secciones en capa ##
  5. ######################################*/
  6. else if( !strcmp( $_GET["mov"], "mostrar_secciones") )
  7. {
  8. $xcons= consultar_con( "MENUS", "ID='". $_GET["categoria_id"]. "'" );
  9. $xbuf= mysql_fetch_array($xcons);
  10. unset($xcons);
  11. $cons_sec= consultar_enorden_con( "SECCIONES", "RELACION='". $xbuf["NOMBRE"]. "'", "ID" );
  12. unset($xbuf);
  13.  
  14. echo "Secciones: <select name=\"seccion_producto\">";
  15. echo "<option value=\"error\"></option>";
  16. while( $buf_sec= mysql_fetch_array($cons_sec) )
  17. echo "<option value=\"". $buf_sec["ID"]. "\">". $buf_sec["NOMBRE"]. "</option>";
  18. echo "</select>";
  19.  
  20. unset($buf_sec);
  21. unset($cons_sec);
  22. }
  23. ?>


SCRIPT.js
Código
  1. //Funcion para obtener conector AJAX
  2. function ajax()
  3. {
  4. var pagina=false; //conector ajax
  5.  
  6. if( window.XMLHttpRequest ) //Navegador Firefox
  7. pagina= new XMLHttpRequest(); //creamos objeto para el navegador
  8. else if( window.ActiveXObject ) //Navegador Internet Explorer
  9. {
  10. try //Version Actual
  11. {
  12. pagina= new ActiveXObject( "Msxml2.XMLHTTP" ); //creamos objeto para el navegador
  13. }
  14. catch(e) //version Antigua
  15. {
  16. try
  17. {
  18. pagina= new ActiveXObject( "Microsoft.XMLHTTP" ); //creamos objeto para el navegador
  19. }
  20. catch(e)
  21. {
  22. }
  23. }
  24. }
  25. return pagina;
  26. }
  27.  
  28. function cargar_datos( vars, capaview, flujoddatos, varsform )
  29. {
  30. var conector, capa, url;
  31.  
  32. url= 'ajax.php'; //mis funciones para ajax
  33. capa= document.getElementById(capaview);
  34.  
  35. conector= ajax();
  36. conector.open( flujoddatos, url+'?'+vars, true );
  37. conector.onreadystatechange= function()
  38. {
  39. if( conector.readyState==1 )
  40. {
  41. capa.innerHTML= "<center><img src='../admin/imagenes/loading.gif'><br><b>CARGANDO...</b></center>";
  42. }
  43. else if( conector.readyState==4 )
  44. {
  45. if( conector.status==200 )
  46. {
  47. if( varsform!=0 )
  48. conector.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" );
  49. capa.innerHTML= conector.responseText;
  50. }
  51. else if( conector.status==404 )
  52. {
  53. capa.innerHTML= "La pagina que intentas cargar no existe...";
  54. }
  55. else
  56. {
  57. capa.innerHTML= conector.status;
  58. }
  59. }
  60. }
  61. //conector.setRequestHeader( "Content-Type", "multipart/form-data" );
  62. if( varsform!=0 )
  63. {
  64. var myarr= varsform.split(':'); //dividimos
  65. var trama="";
  66. var i=0;
  67.  
  68. for( i=0; i<(myarr.length); i++ )
  69. {
  70. if( i>0 )
  71. trama += "&";
  72. trama += myarr[i]+"="+document.getElementById(myarr[i]).value;
  73. }
  74. alert(trama);
  75.  
  76. conector.setRequestHeader( "Content-Type", "application/x-www-form-urlencoded" );
  77. conector.send(trama);
  78. }
  79. else
  80. conector.send(null);
  81. }
577  Programación / PHP / Re: Problema para procesar datos en AJAX !! en: 31 Julio 2008, 03:34 am
De poder usar el mismo achivo puedes.
Osea desde index.php puedes llamar mediante ajax a index.php

Lo que debes de controlar es la salida que envias al explorador , ajax regresa en

responseText

toda lo que se le envia al explorador .

te carga todo nuevamente por que en tu ejemplo el archivo index.php envia al browser sin ningun tipo de validacion , contenido html , pero si tu validaras que se enviara ese contenido solamente cuando no es una peticion ajax , no tendria por que regresarte lo demas .

Por ejemplo

si no es peticion ajax
    muestra todo
sino si es ajax
   muestra solamente esto.

Algo por el estilo , como ve si es una peticion ajax o no , pues enviando parametros por post o get , ya queda en el metodo que quieras usar.

Bueno, sera que no la capto bien yo, o no me explique adecuadamente :S, en fin, voy a poner un pequenito ejemplo:

Código:
<html>
<head>
<title>Test javascript</title>
<script language="javascript" type="text/javascript">
function saludo()
{
alert('hola');
}

function ajax()
{
var pagina=false; //conector ajax

if( window.XMLHttpRequest ) //Navegador Firefox
pagina= new XMLHttpRequest(); //creamos objeto para el navegador
else if( window.ActiveXObject ) //Navegador Internet Explorer
{
try //Version Actual
{
pagina= new ActiveXObject( "Msxml2.XMLHTTP" ); //creamos objeto para el navegador
}
catch(e) //version Antigua
{
try
{
pagina= new ActiveXObject( "Microsoft.XMLHTTP" ); //creamos objeto para el navegador
}
catch(e)
{
}
}
}
return pagina;
}

function enviar_datos( url, vars, capaview )
{
var conector, capa;

capa= document.getElementById(capaview);
conector= ajax();

conector.open( "GET", url+'?'+vars, true );
conector.onreadystatechange= function()
{
if( conector.readyState==1 )
capa.innerHTML= "<center><img src='admin/imagenes/loading_04.gif'></center>";
else if( conector.readyState==4 )
{
if( conector.status==200 )
{
capa.innerHTML= conector.responseText;
}
else if( conector.status==404 )
{
capa.innerHTML= "<h1>Pagina no encontrada...</h1>";
}
}
}
conector.send(null);
}
</script>

<style typ="text/css" rel="stylesheet">
#contenedor_upload
{
margin:5px;padding:10px;
border:solid gray 1px;
width:250px;
font-family:"sans-serif";font-size:10px;
}

#miboton
{
margin:5px;
}
</style>
</head>

<body>
<?php
echo "<a href=\"#\" onclick=\"enviar_datos( '123.php', 'muestra=1', 'contenedor_upload' );\">Click ME</a>";

echo "<br>";
echo "<div id=\"contenedor_upload\">";
if( isset($_GET["muestra"]) && $_GET["muestra"]=1 )
echo "Mostrandome";
echo "</div>";
?>
</body>
</html>

Si le doy click en: CLICK ME, me aparece todo el contenido de la hoja 123.php dentro del DIV CONTENEDOR_UPLOAD, y eso es lo que no quiero, porque aparti de aqui me siento forzado a usar una segunda pagina para poder tratar las respuesras de la hoja 123.php, seria posible mostrar el mensaje de "Mostrandome" dentro de la DIV din imprimirse otra vez CLICK ME ???



Por otro lado , creo que gmail usa las funciones settimeout y setinterval , no puedo asegurar eso , pero creo que es lo mas seguro , ejecutan la consulta al servidor cada cierto lapso de tiempo.

Pues talvez, pero una ves resuelva la duda de arriba, buscare como hacerlo como google, pero... las funciones settimeout y setinterval son funciones que se utilizan en javascript ???, porque solo las conozco para PHP !!...
578  Programación / PHP / Re: Problema para procesar datos en AJAX !! en: 31 Julio 2008, 02:46 am
Disculpa la demora.

En esta parte

\"javascript:cargar_datos( '". $_SERVER['HTTP_HOST']. "/~diabliyo/index.php?id=inicio'

estas generando una ruta la ruta que generas es de este tipo

localhost/~diabliyo/index.php?id=inicio

la ruta deberia de ser asi

http://localhost/~diabliyo/index.php?id=inicio

o en su defecto

/index.php?id=inicio

se queda en estado cargando por el hecho de que nunca llega a encontrar la ruta que le pasas como parametro.

Saludos¡¡


Asi es tienes toda la razon, ya he avanzado un poco en el codigo, pero me queda una duda que si me encantaria me pudieran contestar, no es tanto de codigo, sino para comprencion del uso de AJAX. La pregunta es la siguiente:

Por lo genera en ejemplos de internet siempre he visto que utilizan ajax con la particularidad que en la parte de ajax.open();, el segundo parametro (de los tres que debe llevar), siempre es una hoja/pagina dierente a la hoja/pagina desde donde se esta procesando o activando la funcion ajax, a caso ajax no puede no se puede implementar para que se use la misma hoja/pagina ???...

Un poco mas explicado seria: estamos en la pagina index.php, y en esta tenermos 3 botones y una area donde mostraremos "algo" por cada boton pulsado, en esta parte tenemos una DIV ID=CONTENIDO, asi que a cada boton le ponemos algo asi onclick=mi_funcion_cargar_datos( vars ), pero esta funcion por lo general en muchos ejemplos de internet hacen esto en cierta parte del codigo:

Código:
function mi_funcion_cargar_datos( vars )
          {
          var conector, capa;

          capa.getElementById('contenido');  //capa
          conector= ajax(); //obtenemos objeto
          conector.open( "GET", 'contenidos.php?'+vars, true ); //a caso, no se puede interactuar con la misma INDEX.php ??
          conector.onreadystatechange= function()
                    {
                    if( conector.readyState==1 )
                              capa.innerHTML= "Cargando...";
                    else if( conector.readyState==4 )
                              {
                              if( conector.status==200 )
                                        capa.innerHTML= conector.responseText;
                              else if( conector.status==404 )
                                        capa.innerHTML= "Pagina no encontrada...";
                              else
                                        capa.innerHTML= "ERROR: ".conector.status;
                              }
                    }
          conector.send(null);
          }

Oviamente si en la parte de conector.open() pusiese la hoja index.php, entonces se volveria a cargar todo el contenido nuevamente dentro del DIV CONETENIDO, pero, no se puede hacer algo, o alguna solucion para no usar siempre forosamente una segunda hoja/pagina ??..

Porque, si lo comparamos con el sistema de Gmail, los enlaces (links, <a>), no aparecen con la etiqueta de javascript:funcion(), ni mucho menos con eventos onclick=algo()....

Aparte me intriga como poder siempre estar checando cierta hoja o archivo, ya que si volvemos a compararlo con el sistema de Gmail cuando nos llega un mail nuevo, o nos responden a un correo que estamos leyendo, en ese mismo instante el sistema de correo nos avisa de un correo nuevo, aparte, si estamos observando la bandeja de correo y en ese instante llega un mail, inmediatamente se posiciona y podemos ver el nuevo correo sin necesidad de actualizar la bandeja de correos :S !!...

Alguien tiene alguna explicacion o respuesta para mi ??

Gracias de antemano !!....
579  Programación / PHP / Re: Aprendiendo AJAX con PHP!! en: 26 Julio 2008, 04:22 am
Bueno en fin, entonces usare la manera anterior, cambiando los tiempo de ejecucion de script mediante funciones hasta subir el archivo jejeje...

Porfavor puedes leer el siguiente post que es sobre el procesamiento de datos en AJAX:

POST: http://foro.elhacker.net/php/problema_para_procesar_datos_en_ajax-t221917.0.html
580  Programación / PHP / [SOLUCIONADO] Problema para procesar datos en AJAX !! en: 26 Julio 2008, 04:21 am
Cambiando un poco, estuve replanteando un pequeno ejemplo para aprender un poco mas sobre el manejo y la logica de AJAX, porfavor alguien puede explicarme el porque del siguiente problema:

Porque al pusar cualquier opcion del menu horizontal se queda escrito en la pagina los mensajes de: "Estamos procesando su peticion..." y "Cargando..." y jamas se muestra la informacion que quiero :S ??...

Codigo de index.php:

Código
  1. <html>
  2. <head>
  3. <title>Carter System :: Sistema para Control de Cliente</title>
  4. <link rel="stylesheet" type="text/css" href="css/estilos.css">
  5. <script language="javascript" type="text/javascript" src="js/script.js"></script>
  6. </head>
  7.  
  8. <body>
  9. <?php
  10. //division principal de toda la hoja
  11. echo "<div id=\"principal\">";
  12. echo "<div id=\"tag_sistema\">";
  13. echo ":: Carte v1.0 - Sistema para Control de Clientes.";
  14. echo "</div>";
  15. echo "<div id=\"menu_controles\">";
  16. echo "<a href=\"javascript:cargar_datos( '". $_SERVER['HTTP_HOST']. "/~diabliyo/index.php?id=inicio', 'area_work', 'menu_controles' );\">Inicio</a> | ";
  17. echo "<a href=\"javascript:cargar_datos();\">Clientes</a> | ";
  18. echo "Deudores | ";
  19. echo "Acredores | ";
  20. echo "Salir";
  21. echo "</div>";
  22. echo "<div id=\"recuadro_mensajes\"></div>";
  23.  
  24. echo "<div id=\"area_work\">";
  25. switch( $_GET["id"] )
  26. {
  27. case 'inicio';
  28. echo "Hola que onda";
  29. break;
  30. }
  31. echo "</div>";
  32. echo "</div>";
  33. ?>
  34. </body>
  35. </html>

Codigo del script.js

Código
  1. function ajax()
  2. {
  3. var pagina=false; //conector ajax
  4.  
  5. if( window.XMLHttpRequest ) //Navegador Firefox
  6. pagina= new XMLHttpRequest(); //creamos objeto para el navegador
  7. else if( window.ActiveXObject ) //Navegador Internet Explorer
  8. {
  9. try //Version Actual
  10. {
  11. pagina= new ActiveXObject( "Msxml2.XMLHTTP" ); //creamos objeto para el navegador
  12. }
  13. catch(e) //version Antigua
  14. {
  15. try
  16. {
  17. pagina= new ActiveXObject( "Microsoft.XMLHTTP" ); //creamos objeto para el navegador
  18. }
  19. catch(e)
  20. {
  21. }
  22. }
  23. }
  24.  
  25. return pagina;
  26. }
  27.  
  28. function cargar_datos( url, capadatos, capaconsola )
  29. {
  30. var control, msg_datos, msg_consola;
  31.  
  32. msg_datos= document.getElementById(capadatos);
  33. msg_consola= document.getElementById(capaconsola);
  34.  
  35. control= ajax(); //creamos conector
  36. control.open( "GET", url );
  37. control.onreadystatechange= function()
  38. {
  39. if( control.readyState==1 )
  40. {
  41. msg_consola.innerHTML= "Estamos procesando su peticion...";
  42. msg_datos.innerHTML= "Cargando...";
  43. }
  44. else if( control.readyState==4 )
  45. {
  46. if( control.status==200 )
  47. msg_datos.innerHTML= control.responseText;
  48. }
  49. }
  50.  
  51. control.send(url);
  52. }
Páginas: 1 ... 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 [58] 59 60 61 62 63 64 65 66 67 68 69 70 71 72
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines