Bonjour,
J'ai un formulaire qui contient plusieurs champs, tous sont des clés étrangères. Le problèmes c'est que je ne peux pas faire d'insertion, à condition que tous les champs soient remplis, or je ne veux pas qu'ils soient obligatoires, je les ai mis en NULL dans phpMyAdmin, mais ça ne change rien.
Si un seul champ n'est pas rempli, j'ai cette erreur (par exp pour le premier champ 'nationalité') :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 if (isset($_POST['valider'])) { $nom_contact=$_SESSION['nom_contact']; echo $nom_contact; $reponse = $bdd->query("SELECT * FROM structure WHERE nom_contact='$nom_contact'"); $donnees = $reponse->fetch(PDO::FETCH_ASSOC); $id_struct=$donnees['id_struct']; while ($donnees = $reponse->fetch(PDO::FETCH_ASSOC)) if ($donnees["id_struct"]==$id_struct) $id_struct=$donnees['id_struct']; $nationalite=$_POST['nationalite']; $statut_conflit=$_POST['statut_conflit']; $etat=$_POST['etat']; //$sepulture=$_POST['id_sepulture']; $sexe=$_POST['sexe']; $age=$_POST['age']; $particularite=$_POST['particularite']; $confession=$_POST['confession']; $institution=$_POST['institution']; $administrative=$_POST['administrative']; $aide_sociale=$_POST['aide_sociale']; $date_ajout = date('Y-m-d H:i:s'); PRINT_r($_POST).'<br />'; $bdd->exec("INSERT INTO categorisation VALUES (null,'$id_struct','$nationalite','$statut_conflit','$etat','4','$sexe','$age','$particularite','$confession','$institution','$administrative','$aide_sociale','$date_ajout',NULL)") or print_r($bdd->errorInfo()); }Incorrect integer value: '' for column 'id_nationalite' at row 1
Partager