A continuación veremos con se estrcutura el fichero editar.php:
<?php
//incluimos el fichero config.php para coger los datos de la conexi?n
include_once('../config.php');
//cogemos las variables de las coneci?n para que se puedan utilizar en el script
global $server, $database, $user, $passwd;
//abrimos la conexi?n
$conexion = mysql_connect($server,$user,$passwd);
//elegimos la BBDD
mysql_select_db ($database, $conexion) OR die ("No se puede conectar");
//rellenamos la consulta, cambiar alumnos por el nombre de la tabla a listar
$sql="Select * from asignaturas WHERE id=".$_GET['id'].";";
//re realiza la consulta
$result=mysql_query($sql,$conexion);
//print $sql;
//se coge el registro del alumno
$row= mysql_fetch_array($result);
?>
<html>
<head>
<TITLE>Editar Asignatura</TITLE>
<LINK REL="stylesheet" TYPE="text/css"
HREF="../estilo.css" />
</head>
<body>
<?php
//se mira si se est? enviando el formulario de edici?n del alumno
if(!isset( $_POST['editar']))
{
//Si se est? enviando el formulario
//echo "<p>Vuelva a intentarlo</p>";
//se abre el formulario que envia los datos de las modificaciones de ese registro
echo "<form method=\"post\" action=\"editar.php?id=".$_GET['id']."\" >";
// muestra el c?digo del alumno
echo "Codigo:".$row['id']."<br>";
// a partir de aqui se muestran los campos a rellenar en el formulario
// si se substituye echo "Nombre : <input type=\"text\" name=\"nombre\" value=\"".$row['nombre']."\" maxlength =200 size=40><br>";
// por echo "Nombre : <input type=\"text\" name=\"nombre_de_campo\" value=\"".$row['nombre']."\" maxlength =longitud_maxima_de_campo
//size=tama?o_dte_la_caja><br>";
// se muestra la caja del nombre del alumno
echo "Nombre : <input type=\"text\" name=\"nombre\" value=\"".$row['nombre']."\" maxlength =100 size=40><br>";
// se pone el bot?n de guardar los datos
echo "<input type=\"submit\" name=\"editar\" value=\"Guardar\"></form><br>";
}else{
// si se env?a el formulario hay que coger los datos del formulario y meterlos en la BBDD
// aqui se deben a?adir tantos isset($_POST['nombre_de_campo']) && como campos haya en la bbdd
if(isset($_POST['nombre'])){
//se desactiva el contenido de la variable $sql
unset($sql);
// se rellena la consulta que inserta los datos
//se ponen tantos `nombre_de_campo` = '".$_POST['nombre_de_campo']."',
$sql="UPDATE `asignaturas` SET `nombre` = '".$_POST['nombre']."' WHERE `id` =".$_GET['id']." LIMIT 1 ;";
//echo $sql;
//se envia la inserci?n de datos en la BBDD
$result=mysql_query($sql,$conexion);
//Se informa por la p?gina web que el alumno ha sido modificado
echo "<p>Asignatura Modificada</p>";
//se coloca el bot?n que hace volver al listado de alumnos
echo "<p><A HREF='index.php'>Volver</A></p>";
}else{
// se informa al usuario que no se han rellenado los campos
echo "Vuelva a intentarlo.<br>";
//se abre el formulario que envia los datos de las modificaciones de ese registro
echo "<form method=\"post\" action=\"editar.php?id=".$_GET['id']."\" >";
// muestra el c?digo del alumno
echo "Codigo:".$row['id']."<br>";
// a partir de aqui se muestran los campos a rellenar en el formulario
// si se substituye echo "Nombre : <input type=\"text\" name=\"nombre\" value=\"".$row['nombre']."\" maxlength =200 size=40><br>";
// por echo "Nombre : <input type=\"text\" name=\"nombre_de_campo\" value=\"".$row['nombre']."\" maxlength =longitud_maxima_de_campo
// size=tama?o_dte_la_caja><br>";
// se muestra la caja del nombre del alumno
echo "Nombre : <input type=\"text\" name=\"nombre\" value=\"".$row['nombre']."\" maxlength =200 size=40><br>";
// se pone el bot?n de guardar los datos
echo "<input type=\"submit\" name=\"editar\" value=\"Guardar\"></form><br>";
}
}
?>
</body>
</html>
En la primera parte se coge el parámetro id por GET y se cogen los datos de la tabla.
En la tercera parte es muy parecido al nuevo.php, exceptuando por que intenta colocar los datos del registro de la tabla en el formulario y hace un UPDATE en lugar de un INSERT en la consulta SQL. Los datos en sí mismos del formualario se cogen con POST