Bonsoir à tous,
Dans le script suivant après le Foreach J'ai besoin de récupérer la variable $row['choixbase'] dans la partie mail.
Mais cela ne marche pas à l'heure actuelle. Je ne sais comment la sortir de ce contexte. Pour info, ce script me sert pour une tache cron.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
require('shared.php');
require('./PHPMailer/class.phpmailer.php'); 
$requete= $bdd->prepare("SELECT choixbase, articles, designations, qte, casiers, qui, pourqui FROM envoicherre WHERE envoi ='non'");
$requete->execute();
$nbart=$requete->rowCount();
if ($nbart == 0) {
 
}
else
{
// on recolte les données 
while ($row = $requete->fetch(PDO::FETCH_ASSOC)) {
    $data[$row['choixbase']] .= '<tr><td>'. $row['choixbase'] . '</td><td>'. $row['articles'] . '</td><td>' .$row['designations'] . ' </td><td> ' . $row['qte'] . '</td><td>' . $row['casiers'] . ' </td><td> ' . $row['qui'] . ' </td><td> ' . $row['pourqui']. '</td></tr>'; //'&#10 ';
}
foreach ($data as $base=>$contenu) {
//echo $data ;
$date = date("d-m-Y");
 
$mail = new PHPMailer();
$mail->CharSet = "UTF-8";'**********';
$mail->SMTPAuth   = true;
$mail->Port = 465; // Par défaut
 
// Authentification
$mail->Username = "********";
$mail->Password = "**********";
 
// Expéditeur
$mail->SetFrom('********' , "********");
// Destinataire
$mail->AddAddress('***********');
//$mail->AddCC('**************');
// Objet                                  //////////////////////   
$mail->Subject = 'Commande de pièces à ' .$row['choixbase'] . ' pour Chérré du ' . $date ;
 
// Votre message
$mail->MsgHTML('Merci de nous faire passer les pièces suivantes :<br><br><table width:"300px" cellspacing="2px" cellpadding="2px;" rules="all" style="border:solid 1px black;"><th>Base</th><th>Articles</th><th>Désignations</th><th>Qté</th><th>Casiers</th><th>Qui</th><th>Attribution</th>' . $contenu . '</table><br><br>Merci');
 
// Envoi du mail avec gestion des erreurs
if(!$mail->Send()) {
 
  echo 'Erreur : ' . $mail->ErrorInfo;
 
} else {
	                                                                  /////////////////////
  $stmt = $bdd->prepare('UPDATE envoicherre SET envoi="oui" WHERE choixbase = '.$row['choixbase'].' AND datecde = CURDATE()');
  //$stmt->bindValue('choixbase',$_POST['submit'],PDO::PARAM_STR);
  try {
        $stmt->execute();
  } catch (PDOException $e) {
	error_log("error : ".$e);
  }  
 
}  
}
}
?>
J'ai mis des /////////// au dessus des deux endroits ou j'ai besoin de la variable
Merci d'avance