Foros del Web » Programando para Internet » Javascript » Frameworks JS »

mi segundo ejemplo con ajax

Estas en el tema de mi segundo ejemplo con ajax en el foro de Frameworks JS en Foros del Web. hola que tal, soy recontranuevo en esto de ajax, solamente eh realizado un ejemplo (y lo hice solo cambiando el nombre de una variable por ...
  #1 (permalink)  
Antiguo 08/09/2009, 11:52
Avatar de lukas4  
Fecha de Ingreso: octubre-2008
Ubicación: frente al pc
Mensajes: 496
Antigüedad: 15 años, 6 meses
Puntos: 12
mi segundo ejemplo con ajax

hola que tal, soy recontranuevo en esto de ajax, solamente eh realizado un ejemplo (y lo hice solo cambiando el nombre de una variable por otra), y ocupo de su ayuda, estoy siguiendo este ejemplo:
http://www.w3schools.com/php/php_ajax_database.asp

y mi duda es, como hago para enviar 2 variables al otro archivo, ya que ocupo enviar el nombre del usuario y tambien ocupo enviar el valor de un select, y no tengo ni la mas minima idea de como le puedo enviar el valor del usuario :|
  #2 (permalink)  
Antiguo 08/09/2009, 12:50
Avatar de lukas4  
Fecha de Ingreso: octubre-2008
Ubicación: frente al pc
Mensajes: 496
Antigüedad: 15 años, 6 meses
Puntos: 12
Respuesta: mi segundo ejemplo con ajax

hola mis amigos, le segui tratando y llegue a esto:

Código javascript:
Ver original
  1. var xmlhttp;
  2.  
  3. function sowUser(str){
  4.     xmlhttp=GetXmlHttpObject();
  5.     if(xmlhttp==null){
  6.         alert("Browser does not support HTTP request!");
  7.         return;
  8.     }
  9.     var url="pruebaAjax.php";
  10.     url=url+"?q="+str;
  11.     url=url+"&u="+document.getElementById("usuario").value;
  12.     url=url+"&sid="+Math.random();
  13.     xmlhttp.onreadystatechange=stateChanged;
  14.     xmlhttp.open("GET",url,true);
  15.     xmlhttp.send(null);
  16. }
  17.  
  18. function stateChanged(){
  19.     if(xmlhttp.readyState==4){
  20.         document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
  21.     }
  22. }
  23.  
  24. function GetXmlHttpObject(){
  25.     if(window.XMLHttpRequest){
  26.         return new XMLHttpRequest();
  27.     }
  28.     if(window.ActiveXObject){
  29.         return new ActiveXObject("Microsoft.XMLHTTP");
  30.     }
  31. return null;
  32. }
Código html:
Ver original
  1. <input type="text" name="usuario" id="usuario" value="de ita" />
  2. <select name="titulo" id="titulo" onChange="showUser(this.value)">
  3.     <option value="">Seleccione ...</option>
  4.     <option value="Envio de reporte al usuario">Envio de Reporte al usuario</option>
  5.     <option value="Cotizaci&oacute;n del equipo">Cotizaci&oacute;n del equipo</option>
  6.     <option value="En proceso de adquisicion">En proceso de adquisici&oacute;n</option>
  7.     <option value="Componente en almacen">Componente en almacen</option>
  8.     <option value="Instalacion del componente">Instalaci&oacute;n del componente</option>
  9.     <option value="Equipo entregado">Equipo entregado</option>
  10. <div id="txtHint"><b>info aqui...</b></div>

Código php:
Ver original
  1. $titulo=$_GET['q'];
  2. $usuario=$_GET['u'];
  3.  
  4. $link = mysql_connect("localhost", "root","");
  5. mysql_select_db("MantoRedes",$link);
  6.  
  7. $query="SELECT titulo FROM datostimeline WHERE usuario='".$usuario."'";
  8.  
  9. $result=mysql_query($query,$link);
  10. while($row=mysql_fetch_array($result)){
  11.     if(strcasecmp($titulo,$row['titulo'])==0){
  12.         echo "<script>alert('ya existe')</script>";
  13.         exit();
  14.     }
  15. }

pero el problema es que no hace la busqueda, alguna idea de donde pueda estar el error?
  #3 (permalink)  
Antiguo 10/09/2009, 16:34
 
Fecha de Ingreso: julio-2009
Mensajes: 2
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: mi segundo ejemplo con ajax

En el PHP estás devolviendo el resultado en forma de "<script>", AJAX cambiará el contenido HTML de "txtHint" por ese "<script>" pero no lo ejecutará. Elimina las etiquetas script es decir, déjalo así:

Código PHP:
$titulo=$_GET['q'];
$usuario=$_GET['u'];
 
$link mysql_connect("localhost""root","");
mysql_select_db("MantoRedes",$link);
 
$query="SELECT titulo FROM datostimeline WHERE usuario='".$usuario."'";
 
$result=mysql_query($query,$link);
while(
$row=mysql_fetch_array($result)){
    if(
strcasecmp($titulo,$row['titulo'])==0){
        echo 
"ya existe";
        exit();
    }

Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:05.