Captcha
Fermé
poky17
Messages postés
53
Date d'inscription
lundi 26 mars 2007
Statut
Membre
Dernière intervention
30 mars 2008
-
3 sept. 2007 à 10:14
poky17 Messages postés 53 Date d'inscription lundi 26 mars 2007 Statut Membre Dernière intervention 30 mars 2008 - 6 sept. 2007 à 22:40
poky17 Messages postés 53 Date d'inscription lundi 26 mars 2007 Statut Membre Dernière intervention 30 mars 2008 - 6 sept. 2007 à 22:40
4 réponses
gryzzly
Messages postés
4608
Date d'inscription
lundi 7 novembre 2005
Statut
Contributeur
Dernière intervention
24 octobre 2020
1 335
3 sept. 2007 à 10:32
3 sept. 2007 à 10:32
bizarre... j'avais répondu au post précédent, mais la réponse n'y apparait pas. mystere de ccm.
je refais exactement la meme réponse que précédemment :
tu as deux post action dans la meme page !!
l'un qui dirige vers self, l'autre vers le verifieur... donc forcément, le mail est envoyé/ les données sont introduites dans la base, puisque l'un des deux n'a pas de vérifieur !
au passage, tu ouvres deux forms, et tu n'en fermes qu'un.
tout doit etre envoyé a verifier.php et non pas a self !! et c'est verifier, qui s'il est juste, doit insérer les données! donc toute ta partie de vérif des données dans self, et de requete d'insertion n'a pas lieu d'etre !
je refais exactement la meme réponse que précédemment :
tu as deux post action dans la meme page !!
l'un qui dirige vers self, l'autre vers le verifieur... donc forcément, le mail est envoyé/ les données sont introduites dans la base, puisque l'un des deux n'a pas de vérifieur !
<form action="<?php echo $PHP_SELF; ?>" method="POST"> <input type="hidden" name="posted" value="1"> <p><strong>Prénom :</strong></p> <input type="text" name="pseudo" size="46"> <p><strong>e-mail : (votre adresse sera masquée sur le site)</strong></p> <input type="text" name="email" size="46"> <p><strong>Message :</strong></p> <textarea rows="10" name="message" cols="40"></textarea> <br><br> <form action="crypt/verifier.php" method="post"> <table> <tr><td><?php dsp_crypt(0,1); ?></td></tr> <tr><td>Recopier le code:<input type="text" name="code"></td></tr> <tr><td><input type="submit" name="submit" value="Valider"></td></tr> <tr><td><input type="reset" value="Annuler" name="reset"></td></tr> </table> </form>
au passage, tu ouvres deux forms, et tu n'en fermes qu'un.
tout doit etre envoyé a verifier.php et non pas a self !! et c'est verifier, qui s'il est juste, doit insérer les données! donc toute ta partie de vérif des données dans self, et de requete d'insertion n'a pas lieu d'etre !
poky17
Messages postés
53
Date d'inscription
lundi 26 mars 2007
Statut
Membre
Dernière intervention
30 mars 2008
6 sept. 2007 à 00:21
6 sept. 2007 à 00:21
Bonsoir,
Merci beaucoup pour tous ces précieux conseils, ça devrait le faire.
Dès que j'ai un peu de temps, je me penche sur tout ça et je te tiens au courant.
Merci encore.
Poky
Merci beaucoup pour tous ces précieux conseils, ça devrait le faire.
Dès que j'ai un peu de temps, je me penche sur tout ça et je te tiens au courant.
Merci encore.
Poky
poky17
Messages postés
53
Date d'inscription
lundi 26 mars 2007
Statut
Membre
Dernière intervention
30 mars 2008
6 sept. 2007 à 10:00
6 sept. 2007 à 10:00
Bonjour,
Bon, alors des nouvelles toutes fraîches !!!
ça va un peu mieux, j'ai essayé sur un formulaire de contact.
Les infos sont renvoyées sur une page qui s'appelle traitement.php, j'ai donc tout mis dedans.
Alors, maintenant, si le code est absent ou incorrect, il affiche le message correspondant, mais il valide le formulaire quoi qu'il arrive.
D'ailleurs, il doit y avoir une erreur quelque part, car les champs obligatoires s'ils ne sont pas remplis, on le signale, mais ça valide aussi.
Je vous fournis l'extrait de code de traitement.php.
Merci à tous.
Poky
<!-- content -->
<div id="content">
<h1>Fomulaire validé</h1>
<div class="text">
<p align="center"> Votre message a bien été envoyé et sera traité très prochainement.</>
<p align="center">Merci de votre visite.</p>
<?php
// vérification des champs
if (empty($_POST['nom']))
$message .= "Votre nom<br/>";
if (empty($_POST['email']))
$message .= "Votre email<br/>";
if (empty($_POST['tel']))
$message .= "Votre téléphone<br/>";
if (empty($_POST['comments']))
$message .= "Votre message<br/>";
if (strlen($message) > strlen($msg_erreur)) {
echo $message;
} else
// Informations d'entête du mail:
$headers ="MIME-Version: 1.0\r\n";
$headers .='From: Formulaire InfoBulle';
$headers .='Reply-To: contact@info-bulle.net' ." \r\n";
$headers .='Content-Type: text/plain; ';
$headers .='charset="iso-8859-1"'."\r\n";
$headers .="Content-Transfer-Encoding: 8bit\r\n";
$headers .='X-Mailer:PHP/' . phpversion() . "\r\n";
// sujet du mail
$sujet = "Formulaire du site";
// corps du mail
$message ="\n Civilité : $civilite \n Nom : $nom \n Adresse : $adresse \n Email : $email \n Tél : $tel \n Commentaires : $comments";
$retval = mail("contact@info-bulle.net",$sujet,$message,$headers);
if (chk_crypt($_POST['code']))
echo "<a><font color='#009700'>=> Bravo, vous avez saisi le bon code !</font></a>" ;
else echo "<a><font color='#FF0000'>=> Erreur, le code est incorrect</font></a>" ;
?>
Bon, alors des nouvelles toutes fraîches !!!
ça va un peu mieux, j'ai essayé sur un formulaire de contact.
Les infos sont renvoyées sur une page qui s'appelle traitement.php, j'ai donc tout mis dedans.
Alors, maintenant, si le code est absent ou incorrect, il affiche le message correspondant, mais il valide le formulaire quoi qu'il arrive.
D'ailleurs, il doit y avoir une erreur quelque part, car les champs obligatoires s'ils ne sont pas remplis, on le signale, mais ça valide aussi.
Je vous fournis l'extrait de code de traitement.php.
Merci à tous.
Poky
<!-- content -->
<div id="content">
<h1>Fomulaire validé</h1>
<div class="text">
<p align="center"> Votre message a bien été envoyé et sera traité très prochainement.</>
<p align="center">Merci de votre visite.</p>
<?php
// vérification des champs
if (empty($_POST['nom']))
$message .= "Votre nom<br/>";
if (empty($_POST['email']))
$message .= "Votre email<br/>";
if (empty($_POST['tel']))
$message .= "Votre téléphone<br/>";
if (empty($_POST['comments']))
$message .= "Votre message<br/>";
if (strlen($message) > strlen($msg_erreur)) {
echo $message;
} else
// Informations d'entête du mail:
$headers ="MIME-Version: 1.0\r\n";
$headers .='From: Formulaire InfoBulle';
$headers .='Reply-To: contact@info-bulle.net' ." \r\n";
$headers .='Content-Type: text/plain; ';
$headers .='charset="iso-8859-1"'."\r\n";
$headers .="Content-Transfer-Encoding: 8bit\r\n";
$headers .='X-Mailer:PHP/' . phpversion() . "\r\n";
// sujet du mail
$sujet = "Formulaire du site";
// corps du mail
$message ="\n Civilité : $civilite \n Nom : $nom \n Adresse : $adresse \n Email : $email \n Tél : $tel \n Commentaires : $comments";
$retval = mail("contact@info-bulle.net",$sujet,$message,$headers);
if (chk_crypt($_POST['code']))
echo "<a><font color='#009700'>=> Bravo, vous avez saisi le bon code !</font></a>" ;
else echo "<a><font color='#FF0000'>=> Erreur, le code est incorrect</font></a>" ;
?>
poky17
Messages postés
53
Date d'inscription
lundi 26 mars 2007
Statut
Membre
Dernière intervention
30 mars 2008
6 sept. 2007 à 22:40
6 sept. 2007 à 22:40
Bonsoir,
Un peu étonnée que personne n'ait répondu depuis ce matin, c'est pas le genre de CCM, alors peut-être est-ce comme l'autre fois, message non affiché.
Sinon, je patiente pas d'inquiétude...
Mais, vous nous avez telleemnt habitué à du rapido !!!!
Merci à tous.
Pokt
Un peu étonnée que personne n'ait répondu depuis ce matin, c'est pas le genre de CCM, alors peut-être est-ce comme l'autre fois, message non affiché.
Sinon, je patiente pas d'inquiétude...
Mais, vous nous avez telleemnt habitué à du rapido !!!!
Merci à tous.
Pokt