Formulaire de contact non fonctionnel
Fermé
Horizon355
Messages postés
61
Date d'inscription
lundi 6 décembre 2010
Statut
Membre
Dernière intervention
6 août 2016
-
Modifié par Horizon355 le 22/03/2014 à 03:29
mrphp Messages postés 28 Date d'inscription jeudi 27 février 2014 Statut Membre Dernière intervention 26 mars 2014 - 26 mars 2014 à 22:49
mrphp Messages postés 28 Date d'inscription jeudi 27 février 2014 Statut Membre Dernière intervention 26 mars 2014 - 26 mars 2014 à 22:49
A voir également:
- Formulaire de contact non fonctionnel
- Formulaire de réclamation facebook - Guide
- Formulaire de reclamation instagram - Guide
- Créer un groupe whatsapp sans contact - Guide
- Retrouver contact supprimé - Accueil - Android
- Recuperer contact carte sim - Guide
3 réponses
ReDLoG
Messages postés
243
Date d'inscription
mardi 12 mars 2013
Statut
Membre
Dernière intervention
28 octobre 2021
57
22 mars 2014 à 14:11
22 mars 2014 à 14:11
Bonjour,
>> Pour info, j'ai une erreur au niveau de la récupération du mail (j'ai remplacé mon véritable mail par "mon mail")
Quelle est l'erreur retournée par la fonction mail ou par PHP?
Cdlt.
>> Pour info, j'ai une erreur au niveau de la récupération du mail (j'ai remplacé mon véritable mail par "mon mail")
Quelle est l'erreur retournée par la fonction mail ou par PHP?
Cdlt.
Horizon355
Messages postés
61
Date d'inscription
lundi 6 décembre 2010
Statut
Membre
Dernière intervention
6 août 2016
1
22 mars 2014 à 14:27
22 mars 2014 à 14:27
( ! ) Warning: mail() expects at most 5 parameters, 6 given in C:\UwAmp\www\Mon site\php\send.php on line 62
Call Stack
# Time Memory Function Location
1 0.0591 349792 {main}( ) ..\send.php:0
2 0.1102 351120 mail ( ) ..\send.php:62
La line 62 c'est $mail
Call Stack
# Time Memory Function Location
1 0.0591 349792 {main}( ) ..\send.php:0
2 0.1102 351120 mail ( ) ..\send.php:62
La line 62 c'est $mail
ReDLoG
Messages postés
243
Date d'inscription
mardi 12 mars 2013
Statut
Membre
Dernière intervention
28 octobre 2021
57
22 mars 2014 à 17:26
22 mars 2014 à 17:26
Ben le message est explicite (même si il est en anglais), la fonction PHP mail() accepte 5 paramètres au maximum, tu en donnes 6 donc ça ne passe pas!
Je te laisse lire la doc officielle à ce sujet et je t'invites à la lire régulièrement lorsque tu as un souci dans l'utilisation d'une fonction PHP quelle qu'elle soit...
https://www.php.net/manual/fr/function.mail.php
Cdlt.
Je te laisse lire la doc officielle à ce sujet et je t'invites à la lire régulièrement lorsque tu as un souci dans l'utilisation d'une fonction PHP quelle qu'elle soit...
https://www.php.net/manual/fr/function.mail.php
Cdlt.
Horizon355
Messages postés
61
Date d'inscription
lundi 6 décembre 2010
Statut
Membre
Dernière intervention
6 août 2016
1
25 mars 2014 à 13:45
25 mars 2014 à 13:45
Il n'y a aucun moyen de pouvoir récupérer plus de 5 paramètres ?
ReDLoG
Messages postés
243
Date d'inscription
mardi 12 mars 2013
Statut
Membre
Dernière intervention
28 octobre 2021
57
25 mars 2014 à 22:17
25 mars 2014 à 22:17
Bonsoir,
>> Il n'y a aucun moyen de pouvoir récupérer plus de 5 paramètres ?
Ben non, 5 paramètres c'est largement suffisant! C'est tout simplement toi qui ne sait pas organiser ton script pour récupérer TOUTES les infos du formulaire dont tu as besoin. Par exemple :
Cdlt.
>> Il n'y a aucun moyen de pouvoir récupérer plus de 5 paramètres ?
Ben non, 5 paramètres c'est largement suffisant! C'est tout simplement toi qui ne sait pas organiser ton script pour récupérer TOUTES les infos du formulaire dont tu as besoin. Par exemple :
<?php define('TO', 'destinataire@yourdomain.com'); error_reporting (E_ALL ^ E_NOTICE); function ValidateEmail($email) { $regex = '/([a-z0-9_.-]+)'. # name '@'. # at '([a-z0-9.-]+){2,255}'. # domain & possibly subdomains '.'. # period '([a-z]+){2,10}/i'; # domain extension if($email == '') return false; else $eregi = preg_replace($regex, '', $email); return empty($eregi) ? true : false; } $error = ''; // Check name if(!empty($_POST['nom']) || $_POST['nom'] != "Nom*") { $nom = stripslashes($_POST['nom']); } else { $error .= 'Veuillez entrer votre nom.<br />'; } if(!empty($_POST['prenom']) || $_POST['prenom'] != "Prénom*") { $prenom = stripslashes($_POST['prenom']); } else { $error .= 'Veuillez entrer votre prénom.<br />'; } // Check email if(!empty($_POST['email']) || $_POST['email'] != "Email*" || ValidateEmail($_POST['email'])) { $email = trim($_POST['email']); } else { $error .= 'Veuillez entrer une adresse e-mail.<br />'; } // Check message if(!empty($_POST['message'])) { // Objet du message $objet = "Un message envoyé depuis votre site web"; $message = "Un message de ".$nom." ".$prenom."\r\n"; if(!empty($_POST['organisme'])) { $message .= "Organisme: ".stripslashes($_POST['organisme'])."\r\n"; } else { $message .= "Organisme: aucun organisme spécifié.\r\n"; } if(!empty($_POST['tel'])) { $message .= "Téléphone: ".stripslashes($_POST['tel'])."\r\n"; } else { $message .= "Téléphone: aucun numéro renseigné.\r\n"; } $message .= stripslashes($_POST['message'])."\r\n"; //Header du mail $header = "From: ".$nom." <".$email.">\r\n"; $header .= "Reply-To: ".$email."\r\n"; $header .= "MIME-Version: 1.0\r\n"; $header .= "Content-type: text/plain; charset=iso-8859-1\r\n"; $header .= "Content-Transfer-Encoding: 8bit\r\n"; $header .= "X-Mailer: PHP/".phpversion()."\r\n"; } else { $error .= "Veuillez écrire votre message.<br />"; } if(empty($error)) { if(mail(TO, $objet, $message, $header)) { echo 'Votre message a été envoyé avec succès.'; } else { echo '<div class="formstatuserror">Un incident technique a empêché l'envoi de votre message. Veuillez réessayer un peu plus tard.</div>'; } } else { echo '<div class="formstatuserror">'.$error.'</div>'; } ?>
Cdlt.
Horizon355
Messages postés
61
Date d'inscription
lundi 6 décembre 2010
Statut
Membre
Dernière intervention
6 août 2016
1
26 mars 2014 à 00:39
26 mars 2014 à 00:39
Bonsoir,
J'ai essayé de faire fonctionner le formulaire et je retrouve une nouvelle erreur, différente cette fois :
Warning: mail() [<a href='function.mail'>function.mail</a>]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\UwAmp\www\Mon site\php\send.php on line 71
D'après le début de l'erreur, ça viendrait de mon ordinateur et pas du code
Sinon, comment faire avec ini_set() à la ligne 71 comme précisé ?
Dois-je faire un ini_set($objet, $message, $header) ?
J'ai quand même été voir sur php.net mais je ne saisis pas bien le problème
Cordialement
J'ai essayé de faire fonctionner le formulaire et je retrouve une nouvelle erreur, différente cette fois :
Warning: mail() [<a href='function.mail'>function.mail</a>]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\UwAmp\www\Mon site\php\send.php on line 71
D'après le début de l'erreur, ça viendrait de mon ordinateur et pas du code
Sinon, comment faire avec ini_set() à la ligne 71 comme précisé ?
Dois-je faire un ini_set($objet, $message, $header) ?
J'ai quand même été voir sur php.net mais je ne saisis pas bien le problème
Cordialement
ReDLoG
Messages postés
243
Date d'inscription
mardi 12 mars 2013
Statut
Membre
Dernière intervention
28 octobre 2021
57
26 mars 2014 à 10:48
26 mars 2014 à 10:48
Bonjour,
Ton mail n'est pas configuré en local (sur ton ordi dans le fichier php.ini) mais ce script sera fonctionnel une fois que tu auras déposé le fichier sur un serveur en ligne, si bien entendu cet hébergeur autorise l'utilisation de la fonction mail() et si elle n'est pas "bridée".
Cdlt.
Ton mail n'est pas configuré en local (sur ton ordi dans le fichier php.ini) mais ce script sera fonctionnel une fois que tu auras déposé le fichier sur un serveur en ligne, si bien entendu cet hébergeur autorise l'utilisation de la fonction mail() et si elle n'est pas "bridée".
Cdlt.
mrphp
Messages postés
28
Date d'inscription
jeudi 27 février 2014
Statut
Membre
Dernière intervention
26 mars 2014
1
26 mars 2014 à 22:49
26 mars 2014 à 22:49
Voici un générateur de formulaire formidable qui donne du code qui marche super:
http://www.ge-net.ch/page/rw-wfco-owb-0.html
Important: ta page où tu mettra le code doit avoir l'extension php par exemple
page.php si c'est une page page.html le code ne sera pas interpreté
bonne chance
http://www.ge-net.ch/page/rw-wfco-owb-0.html
Important: ta page où tu mettra le code doit avoir l'extension php par exemple
page.php si c'est une page page.html le code ne sera pas interpreté
bonne chance