Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: Joan1985 en 26 de Abril 2016, 09:28

Título: Autorellenar formularios con PHP y menú desplegable extraido de base de datos
Publicado por: Joan1985 en 26 de Abril 2016, 09:28
Muy buenas a todos. De antemano pido disculpas si no presentase adecuadamente el tema.

Me estreno en este foro con una duda que me tiene bloqueado en la creacion de una pagina que enlaza con una BD.

En principio me pareció facil en cuanto a concepto, pero a la hora de ejecutarlo hay algo que se me escapa.

El tema esta en que quiero rellenar unos campos de usuarios ( vacios en ese momento) mediante la seleccion de un menu desplegable en el que aparecerán los usuarios que existan en la BD.

Mi intencion es que tan pronto pinche en un usuario de ese menu desplegable, se rellenen los datos disponibles en los campos que estaban vacios, es decir, que su value cambie.
 
Una vez cargados, yo modifico lo que quiera y al darle al boton actualizar, se envien los datos al fichero php que inserta datos "nuevos" en la BD.

El código es el siguiente:

Código: [Seleccionar]
<html>
<head>
</head>

<body>
<?php
echo '<form action="clientes.php" method="POST">';
echo '<fieldset>';
echo '<legend>Actualizar Cliente</legend>';
                
mysql_connect("localhost","root","");
                echo 
mysql_error();
//selección de la base de datos con la que vamos a trabajar
mysql_select_db("pizzeria");
echo mysql_error();
$sSQL="SELECT nombre,cod_usuario FROM usuario";
$result=mysql_query($sSQL);//ejecuto la sentencia guardada
echo 'Selecciona Usuario:</br>';
echo '<select name="usuario">';
//Generamos el menu desplegable
while ($row=mysql_fetch_array($result))
{echo '<option value='.$row["cod_usuario"].'>'.$row["nombre"];}   //value es lo que VALE la opcion que eliges, y nombre es lo que sale por pantalla.
echo '</select></br>';

echo 'Introducir Nombre:</br>';
echo '<input type="text" name="nombre" value="">';
echo '</br>';

echo ' Introducir Apellidos:</br>';
echo ' <input type="text" name="apell" value="">';
echo ' </br>';

echo ' Introducir Domicilio:</br>';
echo ' <input type="text" name="direc" value="">';
echo ' </br>';

echo ' Introducir Telefono:</br>';
echo '<input type="text" name="telf" value="" maxlength="9" size="9">';
echo '</br></br>';

echo ' <input type="submit" value="Actualizar"/>';
echo ' <input type="reset" value="Borrar Datos"/>';

echo '</fieldset>';


echo '</form>';
?>

</body>
</html>
Título: Re:Autorellenar formularios con PHP
Publicado por: Lorenzo31 en 26 de Abril 2016, 16:55
Le falta mucho a tu código para hacer lo que has dicho que pretendes, por lo que veo.

Por darte una pista, cuando haces change en el select, el desplegable, debes enviar datos o bien a traves de una funcion javascript y ajax, que actualice, o redirigiendote a la misma página actual pero pasando un valor por $_GET, de esta forma...

 <select id="nombre" onchange="if (this.value) window.location.href = 'index.php?nombre=' + this.value;">

De esa manera, en el php detectas que ha seleccionado $_GET['nombre'] y puedes pedir SELECT que muestre datos del usuario con ese nombre.

La mejor forma es con ajax y javascript, por la rapidez pero para eso necesitas conocimientos más extensos.

En esta web tienes cursos que te ayudarian a realizar esas tareas

https://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=57&Itemid=86 (https://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=57&Itemid=86)

Saludos.