Requetes sur des tables aux meme temps
bella-nk
Messages postés
10
Statut
Membre
-
bella-nk Messages postés 10 Statut Membre -
bella-nk Messages postés 10 Statut Membre -
Bonsoir,
j'ai 3tables je voudrais que quand j'insère dans la table1 il y'ait une autre requete qui se declenche et qui prend l'id que j'ai inserer dans la premiere il recupere avec des champs dans la 2eme table et puis les insenrent dans la 3eme... voila tous ça.
ici j'ai un formulaire qui insere les données dans la bdd (premiere table):
jusque la tous marche mais quand je rajoute le code qui suivra la page en question ne s'affiche plus et je ne sais pas comment y remedier!!!
j'ai 3tables je voudrais que quand j'insère dans la table1 il y'ait une autre requete qui se declenche et qui prend l'id que j'ai inserer dans la premiere il recupere avec des champs dans la 2eme table et puis les insenrent dans la 3eme... voila tous ça.
ici j'ai un formulaire qui insere les données dans la bdd (premiere table):
if (isset($_POST["emplacement_actuel"]) and isset($_POST["id_boitier"]) and isset($_POST["id_borne1"]) and isset($_POST["id_borne2"]) and isset($_POST["id_borne3"]))
{
$empborn=$_POST['emplacement_actuel'];
$id_boi=$_POST['id_boitier'];
$id_bor1=$_POST['id_borne1'];
$id_bor2=$_POST['id_borne2'];
$id_bor3=$_POST['id_borne3'];
if (empty($_POST['emplacement_actuel']) or empty($_POST['id_boitier']) or empty($_POST['id_borne1']))
{
echo "Veuillez entrer un emplacement et un identifiant avec celui de la borne qui lui correspond";
}
else
{ $req = $bdd->prepare('INSERT INTO EmplacementBorne(emplacement_actuel, id_boitier, id_borne1, id_borne2, id_borne3)
VALUES (:emplacement_actuel, :id_boitier, :id_borne1, :id_borne2, :id_borne3)');
$req->execute(array(
'emplacement_actuel' => $empborn,
'id_boitier' => $id_boi,
'id_borne1' => $id_bor1,
'id_borne2' => $id_bor2,
'id_borne3' => $id_bor3,));
jusque la tous marche mais quand je rajoute le code qui suivra la page en question ne s'affiche plus et je ne sais pas comment y remedier!!!
$e ='[/contents/1068-sql-commande-select SELECT] ID_vert,ID_rouge from IdBorne
WHERE EmplacementBorne.id_borne1 = IdBorne.Num_born';
$re->$bdd->query($e);
while($row=$re->fetch())
{
$ID_Y=$row['ID_vert'];
$ID_N=$row['ID_rouge'];
}
$rq->closeCursor();
$rq= $bdd->prepare('INSERT INTO FlyportOpinionInfo(ID_YES1,ID_NO1)
VALUES (:ID_YES1, :ID_NO1)');
$rq->execute(array(
'ID_YES1' => $ID_Y
'ID_NO1' => $ID_N,
));
A voir également:
- Requetes sur des tables aux meme temps
- Renommer plusieurs fichiers en même temps - Guide
- Table des matières word - Guide
- Excel trier plusieurs colonnes en même temps - Guide
- Combien de temps reste une story sur facebook - Guide
- Ss06 snapchat combien de temps - Forum Snapchat
2 réponses
bonjour,
pourquoi tu n'utilises pas de Trigger (déclencheur) ça ferait automatiquement les autres requetes à l'exécution de la première...
pourquoi tu n'utilises pas de Trigger (déclencheur) ça ferait automatiquement les autres requetes à l'exécution de la première...
est ce que tu pourrais s'il te plait m'orienter ou m'aider en me donnant un exemple de comment faire car on m'a deja dit ça mais je ne sais pas comment m'y prendre. Merci
il y a des tutos sympa sur nternet qui permette de comprendre simplement le principe. Tu verras, ce n'est pas très compliqué :
http://fr.openclassrooms.com/informatique/cours/triggers-et-vues-materialisees-mysql/qu-est-ce-qu-un-trigger-1
Un trigger ça ressemble ça :
CREATE TRIGGER recettes_vendeurs_insert_t
BEFORE INSERT ON recettes_vendeurs
FOR EACH ROW
BEGIN
INSERT INTO recettes_jour_mat (rc_date, rc_montant) VALUES (NEW.rc_date, NEW.rc_montant)
ON DUPLICATE KEY UPDATE rc_montant = rc_montant + NEW.rc_montant;
INSERT INTO recettes_mois_mat (rc_year, rc_month, rc_montant)
VALUES (YEAR( NEW.rc_date ), MONTH( NEW.rc_date ), NEW.rc_montant)
ON DUPLICATE KEY UPDATE rc_montant = rc_montant + NEW.rc_montant;
INSERT INTO recettes_vendeur_mois_mat (rc_year, rc_month, vd_id, rc_montant)
VALUES (YEAR( NEW.rc_date ), MONTH( NEW.rc_date ), NEW.vd_id, NEW.rc_montant)
ON DUPLICATE KEY UPDATE rc_montant = rc_montant + NEW.rc_montant;
END//
http://fr.openclassrooms.com/informatique/cours/triggers-et-vues-materialisees-mysql/qu-est-ce-qu-un-trigger-1
Un trigger ça ressemble ça :
CREATE TRIGGER recettes_vendeurs_insert_t
BEFORE INSERT ON recettes_vendeurs
FOR EACH ROW
BEGIN
INSERT INTO recettes_jour_mat (rc_date, rc_montant) VALUES (NEW.rc_date, NEW.rc_montant)
ON DUPLICATE KEY UPDATE rc_montant = rc_montant + NEW.rc_montant;
INSERT INTO recettes_mois_mat (rc_year, rc_month, rc_montant)
VALUES (YEAR( NEW.rc_date ), MONTH( NEW.rc_date ), NEW.rc_montant)
ON DUPLICATE KEY UPDATE rc_montant = rc_montant + NEW.rc_montant;
INSERT INTO recettes_vendeur_mois_mat (rc_year, rc_month, vd_id, rc_montant)
VALUES (YEAR( NEW.rc_date ), MONTH( NEW.rc_date ), NEW.vd_id, NEW.rc_montant)
ON DUPLICATE KEY UPDATE rc_montant = rc_montant + NEW.rc_montant;
END//