[RESOLU] problème de requète

coco l'asticot
Invité n'ayant pas de compte PHPfrance

25 nov. 2014, 13:50

Bonjour,

je me permet d"ouvrir un sujet car j'ai un problème sur une requête sql que j'utilise dans du php.

après avoir remplis un formulaire le contenue du POST est envoyé vers la page php qui contient la requête a traiter, j'ai vérifié le contenue du POST, les informations sont bien présentes, je fais ensuite transiter les info vers des variables et enfin je lance la requête suivante :

$requete = mysql_db_query("garderie", "INSERT INTO puericulteur (puericulteur_nom,puericulteur_prenom,puericulteur_adresse,puericulteur_telephone,puericulteur_ville,puericulteur_messagerie) VALUES ('$puericulteur_nom_bdd','$puericulteur_prenom_bdd','$puericulteur_adresse_bdd','$puericulteur_telephone_bdd','$puericulteur_ville_bdd','$puericulteur_messagerie_bdd')");

Dans la structure de cette table il y a un ID primaire : ID_puericulteur et une colonne intitulé salle_ID_salle qui est lié a une table intitulé "salle" cela afin de lié un puériculteur à une salle .

j'ai voulu supprimer la colonne "salle_ID_salle " pour tester mais je ne peux pas la supprimer ( #1553 - Cannot drop index 'fk_puericulteur_salle1_idx': needed in a foreign key constraint).

lorsque je lance la requête a partir de php il me donne l'erreur sql was empty

et si je lance la requête via sql voici l'erreur fournis : #1452 - Cannot add or update a child row: a foreign key constraint fails (`garderie`.`puericulteur`, CONSTRAINT `fk_puericulteur_salle1` FOREIGN KEY (`salle_ID_salle`) REFERENCES `salle` (`ID_salle`) ON DELETE NO ACTION ON UPDATE NO ACTION)

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

25 nov. 2014, 14:37

Bonjour,

Accède à ta bdd avec phpmyadmin et tu devrais pouvoir voir que tu as des clés étrangères en place qui font des liens contraints entre 2 de tes tables.
Il faut que tu supprimes d'abord tes clés étrangères pour pouvoir modifier ta table.

A noter que c'est un problème de pur SQL donc pas la peine de passer par un script PHP, il sera plus simple de debuguer avec phpmyadmin ou équivalent
Quand tout le reste a échoué, lisez le mode d'emploi...

coco l'asticot
Invité n'ayant pas de compte PHPfrance

25 nov. 2014, 14:42

Bonjour,

J'ai mis fin a la contrainte et cela fonctionne.

merci .