Premetto subito che sono alle prime armi,quindi qualcosa che potrebbe essere scontato ,per me non lo è

Ho un problema con una relazione fra 2 tabelle che mi sta facendo impazzire.
le tabelle sono cosi composte:
tabella anagrafica
id int(11) autoincrement primary key
nome varchar(25) not null
cognome varchar(25) not null
sesso set('M', 'F') not null
luogo_nascita varchar(100) not null
data_nascita date not null
codice_fiscale varchar(16) unique
indirizzo varchar(50)
email varchar(50) not nul
telefono varchar(25)
note text
tabella immagini
id int(11) autonicrement primary key
id_utente int(11) not nul
nome_file varchar(50) not null
In pratica nella tabella immagine devo poter caricare 1 o più file per ogni utente.
Nel database metto solo il nome del file,che poi tramite php sposto in una determinata cartella e sempre tramite php lo recupero,modifico o cancello,ma il problema non è qui.
Ho collegato le 2 tabelle cosi : anagrafica.id con immagini.id
Ora la insert che cerca di caricare gli allegati è questa:
INSERT INTO immagini (id_utente, nome_file ) VALUES ('$id_utente','$nome_file')
Però non và.Ho provato ad eseguire il comando manualmente su PhpMyAdmin e ottengo il seguente messaggio:
Cannot add or update a child row: a foreign key constraint fails (`clienti`.`immagini`, CONSTRAINT `immagini_ibfk_1` FOREIGN KEY (`id`) REFERENCES `anagrafica` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE)
Qualcuno mi può aiutare?
Grazie in anticipo