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

me ayudan a pillar el error? php+ajax+xml

Estas en el tema de me ayudan a pillar el error? php+ajax+xml en el foro de Frameworks JS en Foros del Web. hola alguien podria ayudarme a ver donde esta el error en este codigo ke me ha tenido 2 dias metido y no logro resolverlo les ...
  #1 (permalink)  
Antiguo 11/06/2008, 15:58
 
Fecha de Ingreso: junio-2008
Mensajes: 2
Antigüedad: 15 años, 10 meses
Puntos: 0
me ayudan a pillar el error? php+ajax+xml

hola alguien podria ayudarme a ver donde esta el error en este codigo ke me ha tenido 2 dias metido y no logro resolverlo

les cuento, estoy tratando que al ingresar un valor en un campo de texto dentro de un formulario, este sea escrito en otro campo de texto mas abajo, mandando el primer dato a otra pagina php que devuelve el valor en formato xml que recibo e ingreso al segundo campo de texto (lo hice asi ya que una vez que funcione esto, planeo que el xml me traiga mas datos de un bd para rellenar el formulario ingresando el rut)

este es el formulario com_ingresar_insumo.php:

Código PHP:
<?php require_once('../Connections/c.php'); ?>
<?php 
// se conecta a la bd

//revisa las cookies para ver si se esta logeado
if(isset($_COOKIE['ID_my_site'])) 

$username $_COOKIE['ID_my_site']; 
$pass $_COOKIE['Key_my_site']; 
$check pg_query("SELECT * FROM usuarios WHERE u_login = '$username'")or die("error"); 
while(
$info pg_fetch_array$check )) 


//si la cookie tiene el pass incorrecto lo manda  a login
if ($pass != $info['u_pass']) 
{
pg_close($c); 
header("Location: login.php"); 


//sino al area restringida
else 

?>
<html>
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript1.2" src="SCRIPT_COM.js"></script>
</head>

<body onLoad="busca_pro()">
<form action="" method="post">
<table width="626" border="1" align="center">
  <tr>
    <td colspan="4"><div align="center">INGRESO NUEVA FACTURA</div></td>
  </tr>
  <tr>
    <td width="136">Rut Proveedor </td>
    <td width="144"><input type="text"  id="rut" tabindex="1"></td>
    <td width="144"><label>
      <input type="button" name="Busca_proveedor" value="Buscar" tabindex="2" onClick="busca_proveedor()">
    </label></td>
    <td width="174"><div id="testt" /></td>
  </tr>
  <tr>
    <td>Razon social </td>
    <td><input type="text"  id="razon_social" tabindex="3"></td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>N&deg; Correlativo </td>
    <td><input type="text" name="correlativo" id="correlativo" tabindex="4"></td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>N&deg; Factura </td>
    <td><input type="text" name="num_factura" id="num_factura" tabindex="5"></td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>N&deg; Orden Compra </td>
    <td><input type="text" name="num_orden" id="num_orden" tabindex="6"></td>
    <td><input type="button" name="Busca_orden" value="Traer" tabindex="7" onClick="busca_orden()"></td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>Centro de Costo </td>
    <td><input type="text" name="centro_costo" id="centro_costo" tabindex="8"></td>
    <td></td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>solicitante </td>
    <td><input type="text" name="solicitante"  id="solicitante" tabindex="9"></td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
   <tr>
    <td height="26">Observaciones </td>
    <td><input type="text" name="obs"  id="obs" tabindex="10"></td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
     <tr>
    <td height="26"></td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td><label>
      <input  type="button" name="Submit" value="siguiente" tabindex="11">
    </label></td>
  </tr>
</table>
</form>
</body>
</html>
<?php 




else 

//si la cookie no existe manda a login

header("Location: login.php"); 

?>
esta es la pag de javascript script_com.js

Código PHP:
function nuevoAjax(){
    var 
xmlhttp=false;
     try {
         
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
     } catch (
e) {
         try {
             
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
         } catch (
E) {
             
xmlhttp false;
         }
      }

    if (!
xmlhttp && typeof XMLHttpRequest!='undefined') {
         
xmlhttp = new XMLHttpRequest();
    }
    return 
xmlhttp;
}


function 
COM_INGRESAR_INSUMO()
{
     
    
    var 
central;


    
central document.getElementById('COM_PRINCIPAL');
    
ajax=nuevoAjax();
    
ajax.open("GET""/sar/sar/modulo_compras/COM_INGRESAR_INSUMO.php?cargar",true);
    
    
ajax.onreadystatechange=function() 
    { 
       
        
    
        if (
ajax.readyState==4
        {  
            
central.innerHTML ajax.responseText
            
        
}
        
               
        
    }
    
ajax.send(null)
}

var 
http=nuevoAjax();

function 
busca_pro()
{
    
    
// Procede sólo si el objeto http no está ocupado
  
if (http.readyState == || http.readyState == 0)
  {
    
// recupera el nombre escrito por el usuario en el formulario
    
rut encodeURIComponent(document.getElementById("rut").value);
    
// ejecuta la página inicio.php desde el servidor
    
http.open("GET""com_busca1.php?rut=" rutfalse);  
    
// define la función para manejar las respuestas del servidor
    
http.onreadystatechange useHttpResponse;
    
    
// haz la petición al servidor
    
http.send(null);
    
  }
  else
    
// si la conexión está ocupada, prueba de nuevo después de un segundo  
    
setTimeout('busca_pro()'500);    
}

function 
useHttpResponse() 
{
  
// se ejecuta sólo si la transacción se ha completado
  
if (http.readyState == 4
  {
    
// estatus de 200 indica que la transacción se ha completado correctamente
    
if (http.status == 200
    {
      
// extraemos el XML recuperado del servidor
      
var xmlResponse http.responseXML;
       var 
aa xmlResponse.length;
       
document.getElementById('razon_social').value xmlResponse.getElementsByTagName("ruk")[0];
       
document.getElementById('testt').innerHTMLxmlResponse.childNodes[0].data;
      
// obtenemos el "document element" (el elemento raíz) de la estructura XML
     
      // obtenemso el mensaje de texto, que está en el primer hijo de
      // el "document element"
      
      // actualizamos la pantalla del usuario usando los datos recibidos del servidor
      //document.getElementById("divMessage").innerHTML = 
      //                                      '<i>' + helloMessage + '</i>';
       //document.getElementById('showtime').innerHTML = timeValue.childNodes[0].nodeValue;                                    
     
      
document.getElementById('razon_social').value aa;
      
// reiniciar secuencia
      
setTimeout('busca_pro()'500);
    } 
    
// un estatus HTTP distinto de 200 indica que ha habido un error
    
else 
    {
      
alert("Ha habido un problema al acceder al servidor: " http.statusText);
    }
  }

y esta es la que genera un xml com_busca1.php
Código PHP:
<?php require_once('../Connections/c.php'); ?>
<?php 
// se conecta a la bd

//revisa las cookies para ver si se esta logeado
if(isset($_COOKIE['ID_my_site'])) 

$username $_COOKIE['ID_my_site']; 
$pass $_COOKIE['Key_my_site']; 
$check pg_query("SELECT * FROM usuarios WHERE u_login = '$username'")or die("error"); 
while(
$info pg_fetch_array$check )) 


//si la cookie tiene el pass incorrecto lo manda  a login
if ($pass != $info['u_pass']) 
{
pg_close($c); 
header("Location: login.php"); 


//sino al area restringida
else 


// generará la salida XML
header('Content-Type: text/xml'); 
// genera el header XML
echo '<?xml version="1.0"?>';
// crea el elemento <response>
echo '<response>';
 
// recupera el nombre del usuario

$rut $_GET['rut'];
// genera una salida dependiendo del nombre de usuario recibido del cliente
/*
$userNames = array('MANUEL', 'ROBERTO', 'CLAUDIO', 'PEDRO', 'JUAN');
if (in_array(strtoupper($name), $userNames))
  echo ' ¡ Hola, maestro ' . htmlspecialchars($name). '!' ;
else if (trim($name) == '')
  echo 'Desconocido, dime tu nombre, por favor';
else
  echo htmlspecialchars($name) . ', no te conozco';
  */
// cierra el elemento <response>
echo '<ruk>';
echo 
htmlspecialchars($rut);
echo 
'</ruk>';
echo 
'</response>';




else 

//si la cookie no existe manda a login

header("Location: login.php"); 

?>
de antemano muxas muxas gracias
  #2 (permalink)  
Antiguo 11/06/2008, 20:27
 
Fecha de Ingreso: enero-2008
Ubicación: La Plata
Mensajes: 136
Antigüedad: 16 años, 2 meses
Puntos: 3
Respuesta: me ayudan a pillar el error? php+ajax+xml

No mire todo , pero por lo que vi , el problema es que no le pasas ningun valor a "/sar/sar/modulo_compras/COM_INGRESAR_INSUMO.php?cargar" entonces no va a llegar nada.

Espero que sea eso... suerte!
  #3 (permalink)  
Antiguo 11/06/2008, 21:26
 
Fecha de Ingreso: junio-2008
Mensajes: 2
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: me ayudan a pillar el error? php+ajax+xml

Cita:
Iniciado por manchilp Ver Mensaje
No mire todo , pero por lo que vi , el problema es que no le pasas ningun valor a "/sar/sar/modulo_compras/COM_INGRESAR_INSUMO.php?cargar" entonces no va a llegar nada.

Espero que sea eso... suerte!
mm gracias pero no es eso ya que esa funcion nno se esta utilizando

por lo que he visto deberia estar funcionando lo que he logrado es que en el segundo campo de texto me devuelva un valor "undefined" osea que la logica esta bien pero no estoy recepcionando o utilizando correctamente el xmlResponse por ahi debe estar el error
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 13:08.