Autor Tema: Autorellenar formularios con PHP y menú desplegable extraido de base de datos  (Leído 5529 veces)

Joan1985

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 1
    • Ver Perfil
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>
« Última modificación: 27 de Abril 2016, 09:31 por César Krall »

Lorenzo31

  • Avanzado
  • ****
  • APR2.COM
  • Mensajes: 381
    • Ver Perfil
Re:Autorellenar formularios con PHP
« Respuesta #1 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

Saludos.

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".