La Web del Programador: Comunidad de Programadores
https://www.lawebdelprogramador.com/foros/AJAX/794367-actualizar-varios-inputs-con-solo-un-php.html

actualizar varios inputs con solo un php

actualizar varios inputs con solo un php

Publicado por mdhg3 (3 intervenciones) el 25/04/2007 09:21:58
AYUDA!! Tengo un select el cual carga matriculas de vehiculos de una base de datos y segun la matricula seleccionada tiene que mostrar los datos de este vehiculo en inputs.

Lo que necesito saber como se hace es mostrar los datos segun la matricula seleccionada pero sin tener que crear una conexion para cada input y tampoco tener que crear un php para cada uno.
Es decir que con el fichero pagina1.php pueda mostrar todos los datos en los distintos inputs.

--consumo.php--
<script src="funcionescbo.js" language="JavaScript"></script>
Asi creo el select:
function generaCbo()
{
$consulta=mysql_query("SELECT matricula FROM dato_vehiculo");
$indice_cbo==$row["matricula"];
// Voy imprimiendo el primer select compuesto por los paises
echo "<select name='matricula' id='matricula'>";
echo "<option value='valorpordefecto' if ($indice_cbo==''){'selected'}>Elija una Matrícula</option>";
while($registro=mysql_fetch_row($consulta))
{
echo "<option value='".$registro[0]."' if ($indice_cbo==$registro[0]) {'selected'} >".$registro[0]."</option>";
}
echo "</select>";
}

--funcionescbo.js--
addEvent(window,'load',inicializarEventos,false);

function inicializarEventos()
{
// Funcion encargada del select
var select1=document.getElementById('matricula'); // Ponemos el id del select
// Cuando hagamos la seleccion de un item del select se dispara la funcion mostrar
addEvent(select1,'change',mostrar,false);
}

var conexion1;
var conexion2;
var conexion3;
var conexion4;
function mostrar()
{
var codigo=document.getElementById('matricula').value; // ID seleccionado del select
if (codigo!="valorpordefecto") // Opcion seleccionada distinta de "Elige una ..."
{
conexion1=crearXMLHttpRequest(); // Crea el nuevo objeto AJAX
conexion1.onreadystatechange = procesarEventos;
conexion1.open('GET','pagina1.php?cod='+codigo, true); // Envia al servidor el ID del select seleccionado
conexion1.send(null);

conexion2=crearXMLHttpRequest(); // Crea el nuevo objeto AJAX
conexion2.onreadystatechange = procesarEventos;
conexion2.open('GET','pagina2.php?cod='+codigo, true); // Envia al servidor el ID del select seleccionado
conexion2.send(null);

conexion3=crearXMLHttpRequest(); // Crea el nuevo objeto AJAX
conexion3.onreadystatechange = procesarEventos;
conexion3.open('GET','pagina3.php?cod='+codigo, true); // Envia al servidor el ID del select seleccionado
conexion3.send(null);

conexion4=crearXMLHttpRequest(); // Crea el nuevo objeto AJAX
conexion4.onreadystatechange = procesarEventos;
conexion4.open('GET','pagina4.php?cod='+codigo, true); // Envia al servidor el ID del select seleccionado
conexion4.send(null);

}

function procesarEventos()
{
if(conexion1.readyState == 4)
{
document.getElementById("modelo").value=conexion1.responseText;
document.getElementById("tipo").value=conexion2.responseText;
document.getElementById("marca").value=conexion3.responseText;
document.getElementById("unidadfuncional").value=conexion4.responseText;
}
}

--pagina1.php--
<?php
$car=$_REQUEST['cod'];
conexion() //conexion base de datos mysql
////end conexión
$mmsql="SELECT modelo FROM dato_vehiculo WHERE matricula='".$car."'";
$rresult=mysql_query($mmsql)or die(mysql_error());
$rrow = mysql_fetch_array($rresult);
$modelo=$rrow["modelo"];
?>
<? echo $modelo ?> //********* Como muestro los distintos resultados de la sql en distintos inputs

--pagina2.php--
<?php
$car=$_REQUEST['cod'];
conexion()
////end conexión
$mmsql="SELECT tipo FROM dato_vehiculo d,tipo_vehiculo t WHERE d.id_tipo=t.id AND d.matricula='".$car."'";
$rresult=mysql_query($mmsql)or die(mysql_error());
$rrow = mysql_fetch_array($rresult);
$tipo=$rrow["tipo"];
?>
<? echo $tipo ?>

etc....

GRACIAS
sin imagen de perfil

RE:actualizar varios inputs con solo un php

Publicado por Yamil Bracho (184 intervenciones) el 25/04/2007 18:25:00
Haces un solo SELECT trayendo los campos que necesitas separados por algun delimitador por ejemplo ; o ,

RE:actualizar varios inputs con solo un php

Publicado por mdhg3 (3 intervenciones) el 26/04/2007 08:29:43
Gracias ayudarme. Lo que me dices no era mi pregunta pero ya he descubierto como hacerlo. Muchas gracias.

RE:actualizar varios inputs con solo un php

Publicado por Igor André (1 intervención) el 04/03/2009 17:38:44
Hola estoy interesado en lo mismo. Es decir tengo la bbdd y los forms, y demas. Lo que cuando alguien entra en el apartado para modificar por ejemplo un registro ese tiene selects, y cuando cambio el estado de ese select deben cambiar tambien las tarifas dentro de otros inputs en funcion de lo que lea de la BBDD. Si puedes echarme una mano te lo agradeceria. Un saludo.

RE:actualizar varios inputs con solo un php

Publicado por mdhg3 (3 intervenciones) el 05/03/2009 11:05:14
Mira esta página
http://www.formatoweb.com.ar/ajax/select_dependientes.php