Ok te doy un ejemplo basado en tu problema, pero insisto en que antes debes ponerte a estudiar este o cualquier otro lenguaje que te permita manipular bases de datos, es decir que se ejecute del lado del servidor. Personalmente te recomiendo PHP, pero existen otros (ASP, ASP.NET, Ruby, etc...).
Bien, sigamos... Supongamos que tu tabla tiene solamente 3 campos: id(identificador del ejercicio), enunciado y respuesta(recuerda que esto es solo a modo de ejemplo).
Entonces tendriamos nuestra tabla
------ TABLA EJERCICIOS ---------
id int(11) PK auto_increment
enunciado mediumtext
respuesta mediumtext
-----------------------------------------
Ahora desde tu editador, deberias de listar todos los ejercicios.En esta lista solamente vamos a mostrar su enunciado y un enlace para editarlo y otro para eliminarlo.
listado.php (Este me muestra la lista de ejercicios)
Código PHP :
<?php
include('permisos.php'); //estos son los permisos de administrador.
include('conexion.php'); //tu archivo de conexion a la base de datos
$sql = "SELECT id, enunciado FROM ejercicios"; //selecciono todos los ejercicios cargados
$query = mysql_query($sql) or die(mysql_error());
if (!mysql_num_rows($query)) { //si no cargamos ningun ejercicio terminamos.
echo 'No se hallaron ejercicios';
exit(-1);
}
while($row=mysql_fetch_array($query)) { //recorro los resultados.
echo $row['enunciado'].' | <a href="editar.php?id='.$row['id'].'">Editar</a>';
}
?>
Bueno eso es todo, aca aunque sin estilo, estas listando todos los ejercicios. Observa el bucle while, donde muestro
el enunciado y le añado un enlace para editarlo. Ahora vamos a realizar la edicion del mismo:
editar.phpCódigo PHP :
<?php
include('permisos.php');
include('conexion.php');
if (!isset($_GET['id'])) {
header('Location: '.$_SERVER['HTTP_REFERER']);
exit(-1);
}
if (isset($_POST['actualizar'])) {//si tengo que guardar los cambios, lo hago...
$ejercicio = $_POST['enunciado'];
$respuesta = $_POST['respuesta'];
$id = $_POST['id'];
//actualizamos el ejercicio
$sql = "UPDATE ejercicios SET enunciado='$ejercicio', respuesta='$respuesta' WHERE id=$id";
$query = mysql_query($sql) or die(mysql_error());
header('Refresh: 3;url=listado.php'); //volvemos a listado.php en 3 segundos
echo 'El ejercicio ha sido actualizado';
exit(0); //y termino
}
//sino tengo que actualizar, solo muestro los detalles y permitir su actualizacion
$id = $_GET['id'];
$sql = "SELECT enunciado, respuesta FROM ejercicios WHERE id=$id";
$query = mysql_query($sql) or die(mysql_error());
if (!mysql_num_rows($query)) {
echo 'No existe ejercicio con ese identificador';
exit(-1);
}
$row = mysql_fetch_array($query);
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="post" enctype="multipart/form-data">';
echo 'Enunciado: <input type="text" name="enunciado" value="'.$row['enunciado'].'" /><br />';
echo 'Respuesta: <input type="text" name="respuesta" value="'.$row['respuesta'].'"/><br />';
echo '<input type="submit" name="actualizar" value="Guardar cambios"/>';
echo '<input type="hidden" name="id" value="'.$id.'"/>';
echo '</form>';
?>
Y bueno eso es basicamente lo que deberias de hacer. Pruebalo y me avisas si funcionó.
Saludos