Bonjour,
Je fais un projet PHP-MYSQL dans lequel je récupère des variables provenant d'une liste déroulante. Si l'utilisateur n'effectue aucun choix, la valeur retournée est -1, dans les autres cas elles dépend du choix sélectionné (1,2,3,...).
Mon problème se situe seulement si la valeur est -1 (donc si l'utilisateur ne choisit rien). En effet, au moment d'insérer le résulat dans ma base de données, je teste avant l'insertion si la valeur de la variable est égal à -1, si c'est le cas je la remplace par la valeur null afin d'éviter d'insérer une valeur négative dans une Foreign Key...
Voici un extrait du code...
J'ai remarqué qu'en remplacant '".$idDicoAncCat."' par null ($idDicoDesign est quant à lui égal à 1 ou 2 bref différent de -1), comme ceci ...
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 // initialisation des dicos non modifiés avant insertion dans la base de données if ($idDicoAncCat == '-1') {$idDicoAncCat = null;} if ($idDicoDesign == '-1') {$idDicoDesign = null;} $conn = db_connect(); // Insertion dans table Objets $query = "insert into Objets values ('','".$idDicoDesign."','".$idDicoAncCat."','".$AncNoInv."')"; $result = $conn->query($query); if (!$result) { return false; // et c'est ici que je sors à chaque fois ..... } $idObjets = $conn->insert_id;
Cela fonctionne sans problème, ma requête est inséré.... bizarre bizarre ..quelqu'un à une idée ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $query = "insert into Objets values ('','".$idDicoDesign."',null,'".$AncNoInv."')";
Note: Ma table Objets est bien configuré pour permettre des valeurs null pour les 2 attributs suivants $idDicoDesign, $idDicoAncCat.
Merci bcp pour votre aide, car je sèche un peu sur cette histoire![]()
Partager