Erreur formulaire php
Résolu/Fermé
et24
Messages postés
5
Date d'inscription
lundi 14 mars 2011
Statut
Membre
Dernière intervention
15 mars 2011
-
14 mars 2011 à 08:47
et24 Messages postés 5 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 15 mars 2011 - 15 mars 2011 à 02:37
et24 Messages postés 5 Date d'inscription lundi 14 mars 2011 Statut Membre Dernière intervention 15 mars 2011 - 15 mars 2011 à 02:37
A voir également:
- Erreur formulaire php
- Erreur 0x80070643 - Guide
- Formulaire de réclamation facebook - Guide
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Guide
- Erreur 38 free ✓ - Forum Mobile
- Erreur 1001 outlook - Guide
7 réponses
et24
Messages postés
5
Date d'inscription
lundi 14 mars 2011
Statut
Membre
Dernière intervention
15 mars 2011
14 mars 2011 à 11:17
14 mars 2011 à 11:17
up ^^
JooS
Messages postés
2468
Date d'inscription
mardi 22 janvier 2008
Statut
Membre
Dernière intervention
8 juin 2016
228
Modifié par JooS le 14/03/2011 à 16:44
Modifié par JooS le 14/03/2011 à 16:44
Salut, essaye ça pour voir, j'ai modifier quelques trucs ...dont...
1 - L'imbrication des if else, parce que s'était un peut louche ... :)
2 - Le filtre de validation des emails ...
3 - L'affichage des erreurs, car avant, si il y avait plusieurs erreurs, il ne s'afficherai qu'une seule, et ça sera toujours la dernière ...
4 - et a présent $etat est un booléen, si vrai, le formulaire est envoyé, si faux, il affiche les erreurs ...
1 - L'imbrication des if else, parce que s'était un peut louche ... :)
2 - Le filtre de validation des emails ...
3 - L'affichage des erreurs, car avant, si il y avait plusieurs erreurs, il ne s'afficherai qu'une seule, et ça sera toujours la dernière ...
4 - et a présent $etat est un booléen, si vrai, le formulaire est envoyé, si faux, il affiche les erreurs ...
<?php $email_webmaster = "##"; if (isset($_POST["envoyer"])) { $etat = true; if (isset($_POST["email_expediteur"])) $email_expediteur = trim(stripslashes($_POST["email_expediteur"])); elseif (empty($_POST["email_expediteur"])) { $erreur1 = "Saisissez votre adresse email"; $etat = false; } elseif ((filter_var($_POST["email_expediteur"], FILTER_VALIDATE_EMAIL) === FALSE)){ $erreur1 = "Votre adresse e-mail n'est pas valide, merci de réessayer."; $etat = false; } if (isset($_POST["titre"])) $titre = trim(stripslashes($_POST["titre"])); if (isset($_POST["message"])) $message = trim(stripslashes($_POST["message"])); elseif (empty($_POST["message"])) { $erreur2 = "Saisissez un message svp"; $etat = false; } if (empty($_POST["code"])) { $erreur3 = "Saisissez le code de verification s'il vous plait."; $etat = false; } elseif (!empty($_POST["code"]) AND !chk_crypt($_POST['code'])) { $etat = false; $erreur3 = "Code de verification non valide, merci de réessayer."; } } else $etat = false; if($etat) { $entete = "From: ".$email_expediteur." <".$email_expediteur.">\n"; $entete .= "MIME-Version: 1.0"; if (mail($email_webmaster,$titre,$message,$entete)){ echo "Votre message a été envoyé.<br />\n"; echo "<a href=\"".$_SERVER["PHP_SELF"]."\">Envoyer un autre message</a>\n"; } else { echo "Un problème s'est produit lors de l'envoi du message.\n"; echo "<a href=\"".$_SERVER["PHP_SELF"]."\">Réessayez s'il vous plait.</a>\n"; } } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xml:lang="fr" lang="fr" xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Formulaire de contact</title> </head> <body> <?php if ($etat == false AND (isset($erreur1))){ echo "<p><strong>".$erreur1."</strong></p>\n"; } elseif ($etat == false AND (isset($erreur2))){ echo "<p><strong>".$erreur2."</strong></p>\n"; } elseif ($etat == false AND (isset($erreur3))){ echo "<p><strong>".$erreur3."</strong></p>\n"; } ?> <form method="post" action="<?php echo $_SERVER["PHP_SELF"]; ?>"> <p><label for="email_expediteur">Votre adresse e-mail (obligatoire):</label><br /> <input type="text" size="40" name="email_expediteur" id="email_expediteur" value="<?php if (!empty($_POST["email_expediteur"])) echo htmlspecialchars($_POST["email_expediteur"],ENT_QUOTES); ?>" /> </p> <p><label for="titre">Type de bug (facultatif):</label><br /> <input type="text" size="40" name="titre" id="titre" value="<?php if (!empty($_POST["titre"])) echo htmlspecialchars($_POST["titre"],ENT_QUOTES); ?>" /> </p> <p><label for="message">Message (obligatoire):</label><br /> <textarea name="message" id="message" cols="40" rows="5"><?php if (isset($_POST["message"])) echo htmlspecialchars($_POST["message"],ENT_QUOTES); ?></textarea> </p> Veuillez entrez le code ci-dessous: <?php dsp_crypt(0,1); ?> <p><input type="text" name="code" /></p> <p><input type="submit" name="envoyer" value="Envoyer" /></p> </form>
et24
Messages postés
5
Date d'inscription
lundi 14 mars 2011
Statut
Membre
Dernière intervention
15 mars 2011
14 mars 2011 à 12:20
14 mars 2011 à 12:20
merci JooS, je teste ça tout de suite et je reposte!
en tout cas merci
tito23, je travaillais en local mais je fais les tests directement sur mon hébergeur, ça m'évite ainsi de config apache et de voir directement le résultat (si mon hébergeur le tolère)
en tout cas merci
tito23, je travaillais en local mais je fais les tests directement sur mon hébergeur, ça m'évite ainsi de config apache et de voir directement le résultat (si mon hébergeur le tolère)
tito23
Messages postés
305
Date d'inscription
mardi 10 août 2010
Statut
Membre
Dernière intervention
16 janvier 2013
4
Modifié par tito23 le 14/03/2011 à 16:24
Modifié par tito23 le 14/03/2011 à 16:24
en local il faut configurer la variable SMTP et smtp_port et eventuellement sendmail_from dans php.ini.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
et24
Messages postés
5
Date d'inscription
lundi 14 mars 2011
Statut
Membre
Dernière intervention
15 mars 2011
14 mars 2011 à 13:38
14 mars 2011 à 13:38
malheureusement, le code que tu a arrangé n'as pas marché :s
j'ai opté pour un code sans captcha, mais je me heurte à un nouveau problème:
le message s'envoie niquel quand on remplit les champs mais je ne reçois rien dans ma boite mail. Je l'ai testé sur mon hébergeur. Se pourrait-il que ça soit en rapport avec mon hébergeur?
j'ai opté pour un code sans captcha, mais je me heurte à un nouveau problème:
le message s'envoie niquel quand on remplit les champs mais je ne reçois rien dans ma boite mail. Je l'ai testé sur mon hébergeur. Se pourrait-il que ça soit en rapport avec mon hébergeur?
JooS
Messages postés
2468
Date d'inscription
mardi 22 janvier 2008
Statut
Membre
Dernière intervention
8 juin 2016
228
Modifié par JooS le 14/03/2011 à 17:02
Modifié par JooS le 14/03/2011 à 17:02
ça dépend du système de captcha (dsp_crypt) que ta installer ??
Note : J'ai oublier quelque parenthèses :) ... c'est réglé, reste plus qu'a voir le système de captcha
Note : J'ai oublier quelque parenthèses :) ... c'est réglé, reste plus qu'a voir le système de captcha
tito23
Messages postés
305
Date d'inscription
mardi 10 août 2010
Statut
Membre
Dernière intervention
16 janvier 2013
4
14 mars 2011 à 16:50
14 mars 2011 à 16:50
essaie de changer ça
$entete = "From: ".$email_expediteur." <".$email_expediteur.">\n";par
$entete = "From: ".$email_expediteur;
et24
Messages postés
5
Date d'inscription
lundi 14 mars 2011
Statut
Membre
Dernière intervention
15 mars 2011
15 mars 2011 à 02:37
15 mars 2011 à 02:37
Alors après avoir testé vos solutions, j'ai opté pour une solution plus radicale .. ^^
j'ai changé d'hébergeur, et il se trouve que ça venait bien de lui. Pourtant, la fonction mail () était soi disant activée. J'ai retesté mon code de départ, et il marche parfaitement bien malgré quelques bizarreries que tu as souligné JooS ^^
merci beaucoup à vous deux en tous cas!
bonne soirée
j'ai changé d'hébergeur, et il se trouve que ça venait bien de lui. Pourtant, la fonction mail () était soi disant activée. J'ai retesté mon code de départ, et il marche parfaitement bien malgré quelques bizarreries que tu as souligné JooS ^^
merci beaucoup à vous deux en tous cas!
bonne soirée