Sagen wir, ich habe 2 Tabellen.Fremdschlüsselwert wird nicht angezeigt
student_tbl = student_id(PK)
student_name
officers_tbl = officer_id(PK)
officer_name
student_id(FK)
Ich habe ein Autocomplete-Formular mit Daten aus dem Student_tbl. Sobald der Benutzer einen Studentennamen aus dem Autovervollständigungsformular auswählt, hat eine versteckte Eingabe einen Wert, der die ID des ausgewählten Studenten ist. Nachdem Sie das Formular Serialisierung
[stud_id] => Array
(
[1] => 400
[2] => 404
[3] => 423
[4] => 462
[5] => 401
[6] => 413
[7] => 414
[8] => 409
[9] => 403
[10] => 0
)
//others
Wenn stud_id = 0, Studentennamen einfügen officer_name und NULL STUDENT_ID.
Wenn stud_id! = 0, füge NULL zu name und stud_id in student_id ein.
Nach dem Absenden des Formulars, in meiner Datenbank, wird nur der NULL eingefügt.
officers_tbl
Wenn ich versuche, die Beziehung zwischen den beiden Tabellen zu entfernen, alle stud_id
richtig Einfügen/Hinzufügen. Kann mir jemand sagen, was ist mein Fehler? Danke
Hier ist mein Code zum Einfügen der Daten
for($x = 1; $x <= 10; $x++){
if($row['studentid'][$x] == 0){
$stud_id= NULL;
$name = $row['name'][$x];
}else{
$stud_id= $row['studentid'][$x];
$name = NULL;
}
$query= $connection->prepare("INSERT INTO officers_tbl (name, student_id)
VALUES (:name, :student_id);
$query->bindParam(':name', $name, PDO::PARAM_STR);
$query->bindParam(':student_id', $stud_id, PDO::PARAM_INT);
$query->execute();
}
Es funktioniert jetzt. Ich habe meinen Laptop neu gestartet.
_submitting das Formular_ - und was ist Ihr Formular und Bearbeitungscode? hat eine großartige Arbeit geleistet, das Problem zu erklären, aber einen völligen Mangel an Code, den wir betrachten und diagnostizieren konnten. – Abela