![]() Directorio WAP para móvil, Tablet, iPhone o Smartphone Centro de Noticias de la Universidad de Oriente |
|
|
||
domingo julio 10, 2016 Ahora complicaremos un poco la modificación de un registro consultando dos tablas. Supongamos que un alumno desea cambiarse de curso, es decir, se inscribió en uno y quiere borrarse de ese e inscribirse en otro diferente. Debemos mostrar en un "select" el curso actual en el que está inscripto y los otros cursos disponibles en la tabla "cursos". Para resolver este problema tenemos que plantear tres páginas, una donde ingresemos el mail del alumno, la segunda donde se pueda cambiar el curso y por última una que permita modificar la tabla "alumnos" con el nuevo curso seleccionado. La primer página de ingreso del mail es:<html> <head> <title>Problema</title> </head> <body> <form action="pagina2.php" method="post"> Ingrese el mail del alumno: <input type="text" name="mail"><br> <input type="submit" value="buscar"> </form> </body> </html>La segunda página y la más importante en cuanto a novedades es la siguiente: <html> <head> <title>Problema</title> </head> <body> <?php $conexion=mysql_connect("localhost","root","" or die("Problemas en la conexion"; mysql_select_db("base1",$conexion) or die("Problemas en la selección de la base de datos"; $registros=mysql_query("select * from alumnos where mail='$_REQUEST[mail]'",$conexion) or die("Problemas en el select:".mysql_error()); if ($regalu=mysql_fetch_array($registros)) { ?> <form action="pagina3.php" method="post"> <input type="hidden" name="mailviejo" value="<?php echo $regalu['mail'] ?>"> <select name="codigocurso"> <?php $registros=mysql_query("select * from cursos",$conexion) or die("Problemas en el select:".mysql_error()); while ($reg=mysql_fetch_array($registros)) { if ($regalu['codigocurso']==$reg['codigo']) echo "<option value=\"$reg[codigo]\" selected>$reg[nombrecurso]</option>"; else echo "<option value=\"$reg[codigo]\">$reg[nombrecurso]</option>"; } ?> </select> <br> <input type="submit" value="Modificar"> </form> <?php } else echo "No existe alumno con dicho mail"; ?> </body> </html>La primera consulta de la tabla alumnos es para verificar si existe un alumno con el mail ingresado por teclado: $registros=mysql_query("select * from alumnos where mail='$_REQUEST[mail]'",$conexion) or die("Problemas en el select:".mysql_error()); if ($regalu=mysql_fetch_array($registros)) {En caso de existir un alumno con dicho mail, el if se verifica verdadero y pasamos a poblar el control select con los distintos cursos que contiene la tabla "cursos": $registros=mysql_query("select * from cursos",$conexion) or die("Problemas en el select:".mysql_error()); while ($reg=mysql_fetch_array($registros)) { if ($regalu['codigocurso']==$reg['codigo']) echo "<option value=\"$reg[codigo]\" selected>$reg[nombrecurso]</option>"; else echo "<option value=\"$reg[codigo]\">$reg[nombrecurso]</option>"; } ?> </select>Para que aparezca seleccionado el curso actual debemos inicializar lo marca option con el texto selected. Es decir que el if dentro del while se verifica verdadero una solo vez. Por último la tercer página procede a registrar el cambio en la tabla "alumnos": <head> <title>Problema</title> </head> <body> <?php $conexion=mysql_connect("localhost","root","" or die("Problemas en la conexion"; mysql_select_db("base1",$conexion) or die("Problemas en la selección de la base de datos"; $registros=mysql_query("update alumnos set codigocurso=$_REQUEST[codigocurso] where mail='$_REQUEST[mailviejo]'",$conexion) or die("Problemas en el select:".mysql_error()); echo "El curso fue modificado con exito"; ?> </body> </html> |
||
— @INFOUDO.OFICIAL
Comenta o lee lo que otros opinan |
||
COMPÁRTELO:Indica que te gusta y comparte |
||
![]() ![]() ![]() ![]() ![]() |
||
También te puede interesar: Mostrar el calendario de la fecha actual en php |
||
« Función count de SQL. | Cláusula Group By de SQL. » |
||
![]() |
||
Buscador:
|
||
Síguenos en las redes sociales![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Mis cuentas socialesOtrasMóvil: (0426 683 6955 - 0412 8226575) - E-mail: [email protected] - [email protected] - WhatsApp: +58 (0426) 683.69.55 ![]() |
||
|
||
|