Requetes sur des tables aux meme temps

Fermé
bella-nk Messages postés 7 Date d'inscription vendredi 11 avril 2014 Statut Membre Dernière intervention 2 mai 2014 - Modifié par bella-nk le 30/04/2014 à 22:27
bella-nk Messages postés 7 Date d'inscription vendredi 11 avril 2014 Statut Membre Dernière intervention 2 mai 2014 - 30 avril 2014 à 23:26
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):
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,
       ));

2 réponses

prissou53000 Messages postés 72 Date d'inscription jeudi 17 juillet 2008 Statut Membre Dernière intervention 21 janvier 2015 5
30 avril 2014 à 22:53
bonjour,

pourquoi tu n'utilises pas de Trigger (déclencheur) ça ferait automatiquement les autres requetes à l'exécution de la première...
0
bella-nk Messages postés 7 Date d'inscription vendredi 11 avril 2014 Statut Membre Dernière intervention 2 mai 2014
30 avril 2014 à 22:56
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
0
prissou53000 Messages postés 72 Date d'inscription jeudi 17 juillet 2008 Statut Membre Dernière intervention 21 janvier 2015 5
30 avril 2014 à 23:13
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//
0
prissou53000 Messages postés 72 Date d'inscription jeudi 17 juillet 2008 Statut Membre Dernière intervention 21 janvier 2015 5
30 avril 2014 à 23:14
en cas de problème n'hésites pas ;)
0
bella-nk Messages postés 7 Date d'inscription vendredi 11 avril 2014 Statut Membre Dernière intervention 2 mai 2014
30 avril 2014 à 23:26
c'est trop duure
0