Ver Mensaje Individual
  #8 (permalink)  
Antiguo 16/02/2011, 11:20
Stackado
 
Fecha de Ingreso: junio-2009
Mensajes: 75
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Duda acerca de Validacion y modo de consulta AJAX y PHP

Hola,

Eh dedicido generar la consulta solo en el primer input, guardarlo en un arreglo y mostrar el resultado y para asi solo tener que trabajar el arreglo almacenado el siguiente input sin generar otra consulta.

Ahora tengo mis dudas respecto al envio de la informacion a travez del segundo input y como regresaria la nueva informacion, con ayuda de un compañero logramos hacer que la cosulta por fin filtrara la informacion desde el primer input dejando el parametro de filtrado con un valor estatico, asi que ahora solo sera cuestion de acomodarlo para que filtre en el segundo input y el parametro cambie cada vez que se manda desde el segundo input, hemos estado intentadolo pero parece ser que perdemos la informacion al mandarla del segundo input y toda la tabla generada se borra.

podrian darnos una mano respecto a como acomodarlo al segundo input y como mandar la informacion, os lo agradeceria bastante en realidad, el codigo es el siguiente:

Código PHP:
Ver original
  1. <?PHP
  2.       $conexion = mysql_connect("localhost", "root", "root") or die ("No se puede conectar con el servidor");
  3.       $db="bitacora_digeset"; // el nombre de la base de datos
  4.       mysql_select_db($db, $conexion) or die('No pudo seleccionarse la BD.'); // conectamos con la base de datos
  5.    
  6.     /*Captura de variables*/
  7.        $Depen = $_REQUEST['Depen'];
  8.        $Espec = $_REQUEST['Espec'];
  9.        /*$Espec = "ABRAHAM ANAYA GARCIA";*/
  10.        
  11.    
  12.         $query="SELECT Sfolio, dependencia, especialista
  13.                 FROM bitacora_de_consultas
  14.                 WHERE (dependencia LIKE '$Depen')";
  15.        
  16.        
  17.         $resultado=mysql_query($query,$conexion);
  18.        
  19.     if ((strlen($Espec)==0) && (strlen($Depen)>0)){
  20.           //Generola tabla
  21.         $c=0;
  22.  
  23.             if ($resultado>0){
  24.                 while ($row = mysql_fetch_array($resultado)) {
  25.                     /*echo  $row['Sfolio'];
  26.                     echo    $row['dependencia'];
  27.                     echo    $row['especialista'];*/
  28.                     $as=array();
  29.                     echo $as[$c]=$c.".- ".$row['Sfolio'].$row['dependencia'].$row['especialista']."<br/>";
  30.                    
  31.                     $pos=strpos($as[$c],$Espec);
  32.                     if ($pos !== false){
  33.                     echo "<font color=red>".$as[$c]=$c.$row['Sfolio'].$row['dependencia'].$row['especialista']."<br/>"."</font>";
  34.                                         };
  35.                     $c=$c+1;
  36.                 }
  37.             }  
  38.     }
  39.     if ((strlen($Espec)>0) && (strlen($Depen)==0)){
  40.             if ($resultado>0){
  41.                 while ($row = mysql_fetch_array($resultado)) {
  42.                     $pos=strpos($as[$c],$Espec);
  43.                     if ($pos !== false){
  44.                     echo "<font color=red>".$as[$c]=$c.$row['Sfolio'].$row['dependencia'].$row['especialista']."<br/>"."</font>";
  45.                                         };
  46.                     $c=$c+1;
  47.                 }
  48.             }
  49.     }      
  50.     ?>

Dado que solo realizare consulta en un solo input, decidi enviar la informacion del segundo input enotra funcion separada de la primera, parace ser que si envia pero no entra en el filtrado y no me regresa nada, los codigos son los siguientes:

Código Javascript:
Ver original
  1. /****************Realizacion de consulta por medio de AJAX al presional ENTER Keycode == 13********************/
  2. function detectkey_depen(evt,obj) {
  3.       keycode = (evt.keyCode==0) ? evt.which : evt.keyCode;
  4.     if (keycode==13){
  5.           if (document.getElementById('Depen').value.length == 0){
  6.           alert("Debe completar el formulario");
  7.           document.getElementById('Depen').focus();
  8.           return 0;}
  9.           var Depen=obj.value + String.fromCharCode(keycode);
  10.           var pagina='externos/consultassG_dependencia.php?Depen='+Depen;
  11.        
  12.           divcontenido = document.getElementById('SSform2');
  13.           ajax=objetoAjax();
  14.           ajax.open("POST", pagina, true);
  15.           ajax.onreadystatechange=function() {
  16.             if (ajax.readyState==4) {
  17.               divcontenido.innerHTML = ajax.responseText
  18.             }
  19.           }
  20.           ajax.send(null);
  21.     }    
  22. }
  23. function detectkey_espec(evt,obj) {
  24.       keycode = (evt.keyCode==0) ? evt.which : evt.keyCode;
  25.     if (keycode==13){
  26.           if (document.getElementById('Espec').value.length == 0){
  27.           alert("Debe completar el formulario");
  28.           document.getElementById('Espec').focus();
  29.           return 0;}
  30.          var Espec=obj.value + String.fromCharCode(keycode);
  31.          var pagina='externos/consultassG_dependencia.php?Espec='+Espec;
  32.          
  33.           divcontenido = document.getElementById('SSform2');
  34.           ajax=objetoAjax();
  35.           ajax.open("POST", pagina, true);
  36.           ajax.onreadystatechange=function() {
  37.             if (ajax.readyState==4) {
  38.               divcontenido.innerHTML = ajax.responseText
  39.             }
  40.           }
  41.           ajax.send(null);
  42.     }  
  43. }