Attualmente sto cercando di inserire dati in una tabella chiamata , questo tavolo atti "customer_quote" come una tabella di collegamento tra il "cliente" tavolo e le "customer_tariffs "Tabella. Registra inoltre l'utente che ha trasferito i dati tramite la tabella "utente".Impossibile inserire il valore di chiave esterna in collegamento tavolo
Ecco uno schema del mio db:
e qui è uno screenshot della tabella che non mi permette di inserire in esso.
Questo è il processo nel modo in cui inserisco nel mio db:
- dati inserire in tabella dei clienti
- recuperare la riga id utilizzando mysql_insert_id
- Inserire i dati in customer_quote < --- Non funziona!
Ecco il codice:
//code above this inserted data into customer table
//get id of row where data was just inserted
$sustomer->cid = mysql_insert_id($db);
//insert into customer_quote table
$database->query("INSERT INTO customer_quote (cid)
Values ('$customer->cid')");
** Nuovo messaggio di errore **
'Cannot add or update a child row: a foreign key constraint fails (
quote_system
.customer_quote
, CONSTRAINTfk_customer_quote_customer
FOREIGN KEY (cid
) REFERENCEScustomer
(id
) ON DELETE NO ACTION ON UPDATE NO ACTION)'
Come si può vedere che il feedback errore è inutile, quindi dopo circa tre ore di test I ho concluso che il problema è la mia colonna "cid" nella tabella "customer quote".
Accetta solo determinati valori, tuttavia la mia variabile php ha il valore corretto che è possibile inserire tramite phpmyadmin come si può vedere nello screenshot qui sotto.
Quindi deve essere vincoli o altro in mio tavolo che mi sta fermando?
Qualche idea su come risolvere questo problema.
Grazie!
Amare il post dettagliato .... spero solo che la mia risposta sia sbagliata ... perché avresti potuto risparmiare tutto questo aggiungendo un ')' ..... – ManseUK
1. Non sembri stai usando la variabile cid che hai appena ricevuto? Ma invece il cliente-> cid? Immagino che questi si risolvano nella stessa cosa? 2. Non sono un esperto PHP ma non dovrebbe leggere il tuo codice: "INSERISCI I valori customer_quote (cid) ('$ customer-> cid')") - ti manca una parentesi – BeRecursive
scusa che era un tipo, io mano digitò il codice invece di incollare-oops! – kaleeway