salve ragazzi ho due tabelle, una che si chiama film e l'altra dettaglifilms; c'è un vincolo interrelazionali tra le due tabelle:
CREATE TABLE `dettaglifilms` (
`id` int(10) NOT NULL auto_increment,
`regia` varchar(50) default NULL,
`durata` int(5) default NULL,
`anno` int(5) default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
CREATE TABLE `film` (
`id` int(10) NOT NULL auto_increment,
`titolo` varchar(40) NOT NULL default '',
`genere` varchar(40) NOT NULL default '',
`attore1` varchar(40) default NULL,
`attore2` varchar(40) default NULL,
`attore3` varchar(40) default NULL,
`trama` longtext NOT NULL,
`disponibile` varchar(5) NOT NULL default 'si',
PRIMARY KEY (`id`),
UNIQUE KEY `titolo` (`titolo`),
UNIQUE KEY `attore1` (`attore1`,`attore2`,`attore3`),
FOREIGN KEY (`id`) REFERENCES `dettaglifilms` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=270 ;
Quando vado ad inserire i dati, debbo prima inserire i dati nella tabella esterna(dettaglifilms) e poi in quella interna(film), quindi devo fare due insert del tipo:
$dati1=mysql_query("insert into dettaglifilms (regia,durata,anno) values ('$regia','$durata', '$anno')") OR DIE("Non riesco ad inserire i dati in dettaglifilms");
$dati=mysql_query("insert into film (titolo,genere,attore1,attore2,attore3) values ('$titolo','$genere', '$attore1','$attore2','$attore3')") OR DIE("Non riesco ad inserire i dati in films");
}
il problema da me riscontrato che non mi fa inserire i dati nella tabella film, il modo di effettuare un inserimento nelle due tabelle è corretto ?