Foros del Web » Programando para Internet » Javascript »

Problemas al cargar los datos traidos de la base de datos postgres con ajax

Estas en el tema de Problemas al cargar los datos traidos de la base de datos postgres con ajax en el foro de Javascript en Foros del Web. Bueno estoy empezando a realizar un sistema en mvc con html php ajax y postgres, pero no se mucho la utilizacion de ajax el problema ...
  #1 (permalink)  
Antiguo 22/06/2015, 18:23
Avatar de mari_2015  
Fecha de Ingreso: junio-2015
Mensajes: 2
Antigüedad: 8 años, 10 meses
Puntos: 0
Pregunta Problemas al cargar los datos traidos de la base de datos postgres con ajax

Bueno estoy empezando a realizar un sistema en mvc con html php ajax y postgres, pero no se mucho la utilizacion de ajax

el problema que tengo es que encontre un codigo en la web que me sirve para hacer una consulta en la base de datos y traer los resultados y mostrarlos en los campos de texto del formulario sin recargar la pagina, el ejemplo encontrado funciona, pero al adaptarlo al sistema no me hace la funcionalidad, resumiendo un poco me arroja el siguiente error por la consola web:

TypeError: respuesta is null

el depurador me marca la siguiente linea:

campo1.value=respuesta.getElementsByTagName("prime r_nombre_rp")[0].childNodes[0].data;


El codigo es el siguiente:
Código Javascript:
Ver original
  1. function nuevoAjax(){
  2.         var xmlhttp=false;
  3.        
  4.         try
  5.         {
  6.             xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
  7.         }
  8.      
  9.         catch(e)
  10.         {
  11.             try
  12.             {
  13.                 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  14.             }
  15.            
  16.             catch(E)
  17.             {
  18.                 xmlhttp=false;
  19.             }
  20.         }
  21.      
  22.         if (!xmlhttp && typeof XMLHttpRequest!='undefined')
  23.         {
  24.             xmlhttp=new XMLHttpRequest();
  25.         }
  26.         return xmlhttp;
  27.     }
  28. //_______________________________________________
  29.  
  30. function valida_campo_ci(url)
  31. {
  32.     var form_consul_user_especf=document.form_consul_user_especf;
  33.        
  34.  
  35.     if (form_consul_user_especf.consul_ci.value==0)
  36.     {
  37.         alert("Ingrese la cedula del responsable patrimonial a buscar");
  38.         form_consul_user_especf.consul_ci.focus();
  39.         return false;
  40.     }else{
  41.        
  42.             var campo1=document.getElementById("primer_nombre");
  43.             var cod=document.getElementById("consul_ci").value;
  44.          
  45.             var ajax=nuevoAjax();
  46.          
  47.             ajax.open("POST", "url", true);
  48.             ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  49.             ajax.send("v="+cod);
  50.            
  51.      
  52.             ajax.onreadystatechange=function()
  53.             {
  54.                 if (ajax.readyState==4)
  55.                 {
  56.                     var respuesta=ajax.responseXML;
  57.                      
  58.                     campo1.value=respuesta.getElementsByTagName("primer_nombre_rp")[0].childNodes[0].data;
  59.                
  60.                 }
  61.             }  
  62.         }
  63.     }


la clase o modelo:
Código PHP:
Ver original
  1. Class Usuarios extends Conectar{
  2.  
  3. private $ced=array();
  4.        
  5.  public function get_usuarios_por_cedula()
  6.     {
  7.        
  8.         $v=$_POST["v"];
  9.        
  10.         parent::con();
  11.         $sql=sprintf
  12.         (
  13.             "select primer_nombre_rp from responsable_patrimonial where cedula_rp='$v'"
  14.    
  15.         );
  16.        
  17.         $res=pg_query(parent::con(),$sql);
  18.            
  19.             if(pg_num_rows($res)==0)
  20.             {
  21.             echo 'No se encontro ningun resultado';
  22.             }else{
  23.                        
  24.         $reg=pg_fetch_assoc($res);
  25.        
  26.         while($reg=pg_fetch_assoc($res))
  27.          {
  28.               $this->ced[]=$reg;
  29.          }
  30.               $this->ced;
  31.          
  32.         $xml="<?php xml version='1.0' encoding='ISO-8859-1'?>";
  33.         $xml.="<datos>";
  34.         $xml.="<primer_nombre_rp><![CDATA[$reg[0]]]></primer_nombre_rp>";
  35.         $xml.="</datos>";
  36.         header("Content-type: text/xml");
  37.         echo $xml;
  38.            
  39.         return $this->ced; 
  40.             }
  41.     }
  42. }


vista:
Código PHP:
Ver original
  1. <form name="form_consul_user_especf" action=""  method="post">
  2.         <div class="form-inline">
  3.             <!--Buscador-->
  4.             <div class="form-group">
  5.                 <div class="input-group col-lg-12">
  6.                   <input type="text" id="consul_ci" name="consul_ci" data-provide="typeahead" class="form-control"
  7.                   placeholder="Ingrese codigo del bien">
  8.                   <span class="input-group-btn">
  9.                     <input type="hidden" name="grabar2" value="si" />
  10.                     <button type="button"  onClick="valida_campo_ci('<?php echo Conectar::ruta();?>controlador/cuenta_usuarioControlador.php');" class="btn btn-primary" type="button">Buscar</button>
  11.                   </span>
  12.                 </div>      
  13.             </div>
  14.  
  15.  
  16.                 <div class="form-group col-lg-4">
  17.                     <div class="input-group" id="campo">
  18.                         <input type="text" class="form-control" name="primer_nombre" id="primer_nombre" placeholder="Primer Nombre">
  19.                         <span class="input-group-addon">
  20.                             <img src="<?php echo Conectar::ruta();?>img/images_form/usuario.PNG">
  21.                         </span>
  22.                     </div>
  23.                 </div>
  24. </form>

Controlador:
Código PHP:
Ver original
  1. <?php
  2.  
  3.  require_once("config.php");//archivo de conexion a la Base de datos
  4.  require_once("clases/clases_usuario.php"); //archivos de las clases
  5.  $obj=new Usuarios();
  6.  
  7.  
  8. if(isset($_POST["grabar2"]) and $_POST["grabar2"]=="si"){
  9.         $datos=$obj->get_usuarios_por_cedula();exit;           
  10.     }
  11.    
  12. require_once("vista/cuenta_usuario.phtml"); //muestra la vista
  13.  
  14. ?>

Ayudenme Porfaaa

Etiquetas: html+javascript, mvc, php+ajax+formularios, poo
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 18:30.