Insertion en double

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Insertion en double

Re: Insertion en double

par dunbar » 23 juil. 2010, 15:58

Parce que je suis un crétin :wink:
Haha, t'a égayer ma journée, merci :)
:lol:

Re: Insertion en double

par Yosh » 23 juil. 2010, 15:50

Parce que je suis un crétin :wink:
Haha, t'a égayer ma journée, merci :)

Re: Insertion en double

par dunbar » 23 juil. 2010, 14:57

je te conseil d'ailleurs de mettre ton $sqlmp hors boucle :wink:
Hors boucle non parce que je peux avoir plusieurs insertion à faire (suivant le nombre mp_receveur) :wink:
pourquoi t'as 2 execute ?
$stmt->execute($valeur_mysql);
$stmt->execute();
Parce que je suis un crétin :wink:
Merci

Re: Insertion en double

par stealth35 » 23 juil. 2010, 14:55

pourquoi t'as 2 execute ?
$stmt->execute($valeur_mysql);
$stmt->execute();
je te conseil d'ailleurs de mettre ton $sqlmp hors boucle :wink:

Insertion en double

par dunbar » 23 juil. 2010, 14:48

Bonjour,

Je crée deux requêtes un SELECT et un INSERT comme ceci
foreach($p as $var)//-->Parcoure du tableau $p
      {

	   $h = date('H:i:s');            //-->Heure du message.
	   $ip = $_SERVER['REMOTE_ADDR']; //-->Ip de l'expediteur.

       //-->Création de la requete qui récupère l'id correspondante aux pseudos.
       $sqlid  = "SELECT id_user FROM users WHERE pseudo = '".$var."' ";

       //-->Execution de la requete.
       $sth    = $dbh->query($sqlid);
       $result = $sth->fetchAll();

       $row  = $result[0];
       $user = $row['id_user'];

       $sqlmp = "INSERT INTO message_mp
                        SET
                        mp_receveur   = :mp_receveur,
                        mp_expediteur = :mp_expediteur,
                        mp_titre      = :mp_titre,
                        mp_date       =  NOW(),
                        mp_time       = :mp_time,
                        mp_ip         = :mp_ip";


       $stmt = $dbh->prepare($sqlmp);

       $receveur   = $user;
       $expediteur = '1079';
       $titre      = $_POST['texte'];
       $mp_time    = $h;
       $mp_ip      = $ip;

       $valeur_mysql = array(':mp_receveur'   =>  $receveur,
                             ':mp_expediteur' =>  $expediteur,
                             ':mp_titre'      =>  $titre,
                             ':mp_time'       =>  $mp_time,
                             ':mp_ip'         =>  $mp_ip);


        $stmt->execute($valeur_mysql);
        $stmt->execute();

      }
Les requêtes fonctionne parfaitement sauf qu'il m'insert les données en double à chaque requête #-o

Qui pourrais me dire ou je fais une bêtise :?:
D'avance merci