Bonjour,
Voilà plusieurs heures que je me bat avec un foreach qui me retourne une erreur, et à force de toucher le code dans tous les sens je ne sais plus par où le prendre.
Un petit coup de main serait sympa.
Il s'agit d'un système de traitement de contact, le foreach gère les statuts des contacts.
Voici l'erreur qu'il m'est retourné :
Voici maintenant mon code php de la page :Warning: Invalid argument supplied for foreach() in D:\XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.php on line 11
Je vous remercie par avance de l'aide que vous allez m'apporter.
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72 <!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'> <html dir="ltr" lang="fr"> <head> <?php //Connexion à la base de données. require "config/settings.inc.php"; mysql_connect(DB_HOST,DB_LOGIN,DB_PASS); mysql_select_db(DB_BDD); if(@$_POST['formSend'] == 'envoi') { foreach (@$_POST["statut_rep"] as $choix => $val){ $resultats=mysql_query('UPDATE `reponse_contact` SET `id_statut_rep`="'.$val.'"] WHERE `id_contact`= "'.$_POST['statut_rep'].'" ') or die('erreur sql : '.mysql_error()); } } ?> </head> <body> <table border="6" cellpadding="5" cellspacing="0" id="tableau"> <tr> <th> Statut de la réponse </th> <th> Date de réception du mail</th> <th> Statut de la personne</th> <th> Nom</th> <th> Prénom</th> <th> Sujet</th> </tr> <?php $requete="SELECT * FROM `contact`,`reponse_contact` WHERE `contact`.`id_contact`=`reponse_contact`.`id_contact` ORDER BY `date`"; $resultats=mysql_query($requete) or die('erreur sql : '.mysql_error()) ; while ($mess=mysql_fetch_array($resultats)){ echo("<tr>"); echo'<form method="post" enctype="multipart/form-data" action="#" onsubmit="return valider();">'; echo'<td>'; $requete2="SELECT * FROM `statut_rep` "; $resultats2=mysql_query($requete2) or die("erreur sql : ".mysql_error()) ; echo "<select name='statut_rep'>"; while($stat = mysql_fetch_array($resultats2)){ echo '<option value="'.$stat['id_statut_rep'].'" '; if($mess['id_statut_rep'] == $stat['id_statut_rep']){ echo 'selected '; } echo' >'.$stat['statut_rep'].'</option>'; } echo "</select>"; echo'</td>'; echo("<td>".$mess["date"]."</td>"); echo("<td>".$mess["statut"]."</td>"); echo'<td>'.$mess["nom"].'</td>'; echo'<td>'.$mess["prenom"].'</td>'; echo'<td><a href="message.php?id_contact='.$mess["id_contact"].'">'.$mess["sujet"].'</a></td>'; echo'</tr>'; } ?>. </table> <input type="hidden" name="formSend" value="envoi" /> <input type="submit" value="Valider" /> </body> </html>
Cordialement
Partager