Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/08/2005, 02:27
aLiSHa_FW
 
Fecha de Ingreso: agosto-2005
Mensajes: 76
Antigüedad: 18 años, 8 meses
Puntos: 0
Problema con INSERT INTO desde formulario PHP

Hola, quisiera saber si el hecho de tener una tabla en mysql con 1 PK formada por los 4 campos de la tabla, tal que así:

pactor_id PK smallint(4) unsigned - a su vez FK
diag_date PK date
sip PK varchar(8)
dis_name PK varchar(60) - estas tres ultimas son FK, las 3 juntas

puede afectar al modo que inserta PHP los campos en la tabla MySQL??? Es que en mi codigo php del formulario, inserta sin problemas los datos de otras tablas excepto las que estan compuestas por una PK formada por todos los campos de la tabla (ya que son relaciones n:n). En el caso de estas tablas, no devuelve ningun error pero los datos no estan insertados en MySQL. Todos estos campos ya se encuentran insertados en sus respectivas tablas, por lo que el problema de que no se creasen las relaciones lo descarto

El código php sería el siguiente (el mismo para las 4 tablas n:n cambiando los campos):


if ($pactor_id AND $diag_date AND $sip AND $dis_name) {
$sql_selra = "SELECT pactor_id,diag_date,sip,dis_name FROM relation_a WHERE pactor_id='$pactor_id' AND diag_date='$diag_date' AND sip='$sip' AND dis_name='$dis_name'";
if (! $result_ra = mysql_query($sql_selra, $conn)) {
stderr ("Error querying: $sql_selra");
}
$rows = mysql_num_rows($result_ra);
if ($rows==0) {
$sql_rela = "INSERT INTO relation_a (pactor_id, diag_date, sip, dis_name)
VALUES ('$pactor_id', '$diag_date', '$sip', '$dis_name')";
if (! $query = mysql_query($sql_rela, $conn)) {
stderr ("Error querying: $sql_rela");
}
if ($sql_rela) { echo("SQL REL A: $sql_rela");} //borrar (prueba para ver errores)
}
else {
stderr ("Relation a is already in the database");
}
}
else {
print "<br><font style='color: black'>";
printf ("Missing Information, cannot insert Relation a\n");
print "</font></br>";
}


Agradecería su ayuda. Muchas gracias.