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í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> </td>
<td> </td>
</tr>
<tr>
<td>N° Correlativo </td>
<td><input type="text" name="correlativo" id="correlativo" tabindex="4"></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>N° Factura </td>
<td><input type="text" name="num_factura" id="num_factura" tabindex="5"></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>N° 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> </td>
</tr>
<tr>
<td>Centro de Costo </td>
<td><input type="text" name="centro_costo" id="centro_costo" tabindex="8"></td>
<td></td>
<td> </td>
</tr>
<tr>
<td>solicitante </td>
<td><input type="text" name="solicitante" id="solicitante" tabindex="9"></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td height="26">Observaciones </td>
<td><input type="text" name="obs" id="obs" tabindex="10"></td>
<td> </td>
<td> </td>
</tr>
<tr>
<td height="26"></td>
<td> </td>
<td> </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");
}
?>
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 == 4 || 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=" + rut, false);
// 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').innerHTML= xmlResponse.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);
}
}
}
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");
}
?>