Tester la valeur d'une checkbox + mail

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 : Tester la valeur d'une checkbox + mail

par Invité » 04 août 2008, 11:45

j'ai modifié avec ce code, mais la çà envoie à toute la liste ,,, :cry:
quelqu'un connaitrait la bonne syntaxe?

Code : Tout sélectionner

for ($i=0;$i<$nb;$i++){ $o=mysql_fetch_object($result_mail); $mail=$o->news_mail; if ($_POST['select']=='1'){ $send_mail=mail($mail,$objet,$message,$from); } } if ($send_mail){ echo "<br><br><div align=center class=titre2>Mail envoyé avec succés</div>"; echo "<br><div align=center class=titre><a href='liste.php?lien=news' class=ptt_lien>Retour</a></div>"; } else{ echo "<br><br><div align=center class=titre>ECHEC</div>"; echo "<br><div align=center class=titre3><a href='liste.php?lien=news' class=ptt_lien>Retour</a></div>"; } }

par Invité » 04 août 2008, 10:02

merci de votre aide

par Invité » 01 août 2008, 16:55

je recapitule pour que çà soi bien clair

avec ce code la:

Code : Tout sélectionner

for ($i=0;$i<$nb;$i++){ $query_mail_selec="select * from news "; $result_mail_selec=mysql_query($query_mail_selec); $o=mysql_fetch_object($result_mail_selec); $mail=$o->news_mail; if(!$_POST['select']) { $send_mail=mail($mail,$objet,$message,$from); if ($send_mail){ echo "<br><br><div align=center class=titre2>Mail envoyé avec succés</div>"; echo "<br><div align=center class=titre><a href='liste.php?lien=news' class=ptt_lien>Retour</a></div>"; } else{ echo "<br><br><div align=center class=titre>ECHEC</div>"; echo "<br><div align=center class=titre3><a href='liste.php?lien=news' class=ptt_lien>Retour</a></div>"; } } }
donc la liste s'affiche avec les checkox coché, et
si on fait envoyé , on a le message "echec"
si on en decoche , on a le message "echec"
si on en decoche tout , on a le message "message envoyé",mais il ne part qu'on 1er de la liste

alors, que j'aurais voulu en fait que seul les contact avec les casses cochés recois l'email
aurais tu une solution?

par Invité » 01 août 2008, 16:43

en fait meme si tous sont coché , çà part mais qu'au premier de la liste c'est tout

par _activmik » 01 août 2008, 16:39

Tu peux donner le message d'erreur stp ?

par Invité » 01 août 2008, 16:34

non le mail ne part pas en fait

par _activmik » 01 août 2008, 16:19

Que veux tu dire par un échec à l'envoi ? Le mail part quand même ?

par Invité » 01 août 2008, 16:07

merci pour ta reponse,

j'ai rajouté le code que tu m'as indiqué,
seulement, lorsque j'en decoche, çà me fait un echec à l'envoi,
il faut modifier autre chose?
for ($i=0;$i<$nb;$i++){ 

$query_mail_selec="select * from news "; 
$result_mail_selec=mysql_query($query_mail_selec); 
$o=mysql_fetch_object($result_mail_selec); 
$mail=$o->news_mail; 
if(!$_POST['select']) {
$send_mail=mail($mail,$objet,$message,$from); 
} 

}

par _activmik » 01 août 2008, 15:58

Bonjour,

Dans ton code :
for ($i=0;$i<$nb;$i++){ 

$query_mail_selec="select * from news "; 
$result_mail_selec=mysql_query($query_mail_selec); 
$o=mysql_fetch_object($result_mail_selec); 
$mail=$o->news_mail; 
$send_mail=mail($mail,$objet,$message,$from); 
} 
Rajoute une condition de type
if(!$_POST['select'])
qui filtrera les cases non cochées.

Petit rappel : un input checkbox sans value coché a une valeur à TRUE

Tester la valeur d'une checkbox + mail

par Invité » 01 août 2008, 15:47

Bonjour,

j'ai une liste de contact, ( nom, prenom, mail ), generée par une base de donnée, à laquelle j'ai associé chaque contact à une check box:
echo "<td class=table colspan=2><b>Décochez pour ne pas envoyer</b>"; 
for($i=0;$i<$nb;$i++){ 
echo "<tr>"; 
$o=mysql_fetch_object($result_mail); 
$id=$o->news_id; 
$nom=$o->news_nom; 
$prenom=$o->news_prenom; 
$mail=$o->news_mail; 
echo "<td class=table>$nom"; 
echo "<td class=table>$prenom"; 
echo "<td class=table>$mail"; 
echo "<td class=table align=center width=140><div class=textadmin><input type=checkbox name=select value=1 checked>"; 

} 
pour but d'envoyer ensuite un mail avec la fonction mail, mais seulement qu'aux contacts qui seront décochés,
for ($i=0;$i<$nb;$i++){ 

$query_mail_selec="select * from news "; 
$result_mail_selec=mysql_query($query_mail_selec); 
$o=mysql_fetch_object($result_mail_selec); 
$mail=$o->news_mail; 
$send_mail=mail($mail,$objet,$message,$from); 
} 
je voudrais connaitre la condition à ecrire pour envoyer seulement ce mail qu'aux personnes qui seront restés cochés, je pense qu'il faut mettre une condition apres $send_mail=mail($mail,$objet,$message,$from);
mais je ne connais pas la syntaxe,
quelqu'un pourrait m'aider ?
merci d'avance