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 Qui pourrais me dire ou je fais une bêtise
D'avance merci
Ce que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.