Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/05/2003, 17:09
Nefer
 
Fecha de Ingreso: abril-2003
Ubicación: Zaragoza
Mensajes: 10
Antigüedad: 21 años
Puntos: 0
Problema al intentar insertar datos en una tabla de mysql

Hola a tod@s!
Tengo dos tablas en mi base de datos que tienen los mismos campos y del mismo tipo. Una sirve para tener un histórico. En primer lugar, a través de la página web, el usuario rellena un formulario y los datos se insertan correctamente en la primera tabla. Mi problema surge cuando intento insertar los datos en la tabla de histórico cuando el usuario pulsa una opción determinada.

Al principio probe con el siguiente código:

$sql_insert = "INSERT INTO alumno_hist VALUES (SELECT * FROM alumnos WHERE alumn_id = '$user_id'");
if (mysql_query($sql_insert, $conexionMySql) or die(mysql_error())){
//ejecutaría una serie de instrucciones
}

Pero me salía un mensaje de error que me decía que no se podía insertar.

Luego intenté con el siguiente código:

$sql = "SELECT *";
$sql .= "FROM alumnos";
$sql .= "WHERE alumn_id = '$user_id'";
$cons_sql= mysql_query($sql);
$res= mysql_fetch_array($cons_sql);
$sql_insert = "INSERT INTO alumno";
$sql_insert .= "VALUES($res['id'], $res['nombre'], $res['apel1'], ";
$sql_insert .= "$res['apel2'], $res['dir'])";

Lo que pongo entre [] son los nombres de los campos de la tabla de la bd. (He puesto alguno de ellos para no extenderme más de lo que estoy haciendo). Si pongo este código, me aparece la página en blanco debido a que hay algún error de sintaxis y no sé cómo puedo hacer para solucionarlo.

Muchas gracias de antemano por vuestra ayuda.