Authentification smtp dans script PHP
momolevy225
Messages postés
5
Statut
Membre
-
adrienmarty Messages postés 76 Statut Membre -
adrienmarty Messages postés 76 Statut Membre -
Bonjour à tous,
je rencontre un problème avec mon script php pour envoie de mail à partir des données recueillies par mon formulaire de contact. Le formulaire sera intégré dans le site web que je suis en train de monter. Il se trouve que le même script qui marchait il ya de celà un mois me renvoie le message suivant à présent lorsqu'il est invoqué par la page web:
Warning: mail() [function.mail]: SMTP server response: 550 Access denied - Invalid HELO name (See RFC2821 4.1.1.1) in C:\wamp\www\SiteITCwebplus\testemailwebplus.php on line 76
il ya visiblement un problème d'authentification sur mon serveur SMTP. Quelqu'un pourais-t-il me venir en aide?
Merci
je rencontre un problème avec mon script php pour envoie de mail à partir des données recueillies par mon formulaire de contact. Le formulaire sera intégré dans le site web que je suis en train de monter. Il se trouve que le même script qui marchait il ya de celà un mois me renvoie le message suivant à présent lorsqu'il est invoqué par la page web:
Warning: mail() [function.mail]: SMTP server response: 550 Access denied - Invalid HELO name (See RFC2821 4.1.1.1) in C:\wamp\www\SiteITCwebplus\testemailwebplus.php on line 76
il ya visiblement un problème d'authentification sur mon serveur SMTP. Quelqu'un pourais-t-il me venir en aide?
Merci
A voir également:
- 550 access denied - invalid helo name (see rfc2821 4.1.1.1)
- Script vidéo youtube - Guide
- Double authentification google - Guide
- Easy php - Télécharger - Divers Web & Internet
- Ghost script - Télécharger - Polices de caractères
- Smtp outlook.fr - Guide
7 réponses
Le voici, il m'a servi à plusieurs autre tâches d'où les nombreuses lignes en commentaire.
<?php
function sendMail($name, $email, $tel,$msg)
{
$Adressemail = "modeste.koicou-hangban@it-centrex.com";
// Je découpe et recupere les champs correspondants du formulaires dans un tableau "$infos"
//$infos = explode('*',$content);
//$email = $infos[0];
// Vérifier que le mail de l'expéditeur est valide
function ValidateEmail($email){
//$regex = "[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}+";
//$regex = "[A-Za-z0-9\.\_\%\+\-]+@[A-Za-z0-9\.\-]+\\.[A-Za-z]{2,4}";
$regex ="^([a-zA-Z0-9]+(([\.\-\_]?[a-zA-Z0-9]+)+)?)\@(([a-zA-Z0-9]+[\.\-\_])+[a-zA-Z]{2,4})$^";
$res = '';
//$regex = "^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$^";
//$eregi = preg_replace($regex,'', trim($email));
//$eregi = preg_replace($regex,'', trim($email));
preg_replace($regex,$res, trim($email));
$eregi = $res;
return empty($eregi) ? true : false;
}
$error = '<br>';
$messages = '<br>';
//Les champs ne doivent pas être nuls
if(!$name) {
$error .= 'Merci de saisir votre nom et prenoms.<br />';
}
if(!$email) {
$error .= 'Merci de saisir une adresse e-mail.<br />';
}
if($email && !ValidateEmail($email)) {
$error .= 'Merci de saisir une adresse e-mail valide .<br />';
}
if(!$tel) {
$error .= 'Merci de spécifier votre telephone.<br />';
}
if(is_numeric($tel) && strlen($tel) < 8) {
$error .= 'Merci de saisir votre contact.<br />';
}
// vérification la longueur du Message
if(!$msg || strlen($msg) < 5) {
$error .= "Merci de saisir votre message avec au moins 5 characters.<br />";
}
//S'il n'y a aucune anomalie:
if($error == '<br>')
{
//Concaténer le message à envoyer
//$messages="From: $email <br>";
$messages.="Nom: $name \r\n";
$messages.="Email: $email \r\n";
$messages.="Tel: $tel \r\n\r\n";
$messages.="Message: $msg \r\n";
//$emailto=$to;
//$emailto=$Adressemail;
$headers = 'From: '.$email.' <'.$Adressemail.'>'."\r\n\r\n";
$objet = "Demos";
//Envoyer le message
$mail = mail($Adressemail, $objet, $messages, $headers);
//accusé d'envoi
if($mail)
{
echo "Message Envoye";
//Rédirection vers le formulaire
//header('Location: mapage.php');
}
else
{
$error .="les champs sont bons, mais le mail ne va pas";
echo "Message non-envoye: ".$error;
//Rédirection vers le formulaire
//header('Location: mapage.php');
}
}
else
{
echo "Message non-envoye: ".$error;
//Rédirection vers le formulaire
//header('Location: demo_dmd.html');
}
}
//echo "Message nn Envoye, fonction non executee";
sendMail($_GET['name'],$_GET['email'], $_GET['tel'],$_GET['msg']);
?>
merci!
<?php
function sendMail($name, $email, $tel,$msg)
{
$Adressemail = "modeste.koicou-hangban@it-centrex.com";
// Je découpe et recupere les champs correspondants du formulaires dans un tableau "$infos"
//$infos = explode('*',$content);
//$email = $infos[0];
// Vérifier que le mail de l'expéditeur est valide
function ValidateEmail($email){
//$regex = "[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}+";
//$regex = "[A-Za-z0-9\.\_\%\+\-]+@[A-Za-z0-9\.\-]+\\.[A-Za-z]{2,4}";
$regex ="^([a-zA-Z0-9]+(([\.\-\_]?[a-zA-Z0-9]+)+)?)\@(([a-zA-Z0-9]+[\.\-\_])+[a-zA-Z]{2,4})$^";
$res = '';
//$regex = "^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$^";
//$eregi = preg_replace($regex,'', trim($email));
//$eregi = preg_replace($regex,'', trim($email));
preg_replace($regex,$res, trim($email));
$eregi = $res;
return empty($eregi) ? true : false;
}
$error = '<br>';
$messages = '<br>';
//Les champs ne doivent pas être nuls
if(!$name) {
$error .= 'Merci de saisir votre nom et prenoms.<br />';
}
if(!$email) {
$error .= 'Merci de saisir une adresse e-mail.<br />';
}
if($email && !ValidateEmail($email)) {
$error .= 'Merci de saisir une adresse e-mail valide .<br />';
}
if(!$tel) {
$error .= 'Merci de spécifier votre telephone.<br />';
}
if(is_numeric($tel) && strlen($tel) < 8) {
$error .= 'Merci de saisir votre contact.<br />';
}
// vérification la longueur du Message
if(!$msg || strlen($msg) < 5) {
$error .= "Merci de saisir votre message avec au moins 5 characters.<br />";
}
//S'il n'y a aucune anomalie:
if($error == '<br>')
{
//Concaténer le message à envoyer
//$messages="From: $email <br>";
$messages.="Nom: $name \r\n";
$messages.="Email: $email \r\n";
$messages.="Tel: $tel \r\n\r\n";
$messages.="Message: $msg \r\n";
//$emailto=$to;
//$emailto=$Adressemail;
$headers = 'From: '.$email.' <'.$Adressemail.'>'."\r\n\r\n";
$objet = "Demos";
//Envoyer le message
$mail = mail($Adressemail, $objet, $messages, $headers);
//accusé d'envoi
if($mail)
{
echo "Message Envoye";
//Rédirection vers le formulaire
//header('Location: mapage.php');
}
else
{
$error .="les champs sont bons, mais le mail ne va pas";
echo "Message non-envoye: ".$error;
//Rédirection vers le formulaire
//header('Location: mapage.php');
}
}
else
{
echo "Message non-envoye: ".$error;
//Rédirection vers le formulaire
//header('Location: demo_dmd.html');
}
}
//echo "Message nn Envoye, fonction non executee";
sendMail($_GET['name'],$_GET['email'], $_GET['tel'],$_GET['msg']);
?>
merci!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Si tu es en local, as tu pensé à configurer le serveur SMTP ?
http://forum.wampserver.com/read.php?1,34947,35146
Warning: mail() [function.mail]: SMTP server response: 550 Access denied - Invalid HELO name (See RFC2821 4.1.1.1) in C:\wamp\www\SiteITCwebplus\testemailwebplus.php on line 76
Il ne peut pas se connecter à un serveur qu'il ne connait pas.
Avec ce que j'ai vu sur le net, si ton serveur est tout bien configuré, la seule erreur possible serait le nom de domaine de ton e-mail (it-centrex.com).
Mais on en est pas encore là :)
http://forum.wampserver.com/read.php?1,34947,35146
Warning: mail() [function.mail]: SMTP server response: 550 Access denied - Invalid HELO name (See RFC2821 4.1.1.1) in C:\wamp\www\SiteITCwebplus\testemailwebplus.php on line 76
Il ne peut pas se connecter à un serveur qu'il ne connait pas.
Avec ce que j'ai vu sur le net, si ton serveur est tout bien configuré, la seule erreur possible serait le nom de domaine de ton e-mail (it-centrex.com).
Mais on en est pas encore là :)
oui je l'ai fais dans le php.ini en renseignant le SMTP et le PORT. J'y ai même ajouté le user et le password
Désolé de ne pas pouvoir t'aider plus que ca :
Lance ce code en local :
Et si ca ne marche pas le problème vient surement des conditions auquelles tu es en local (configurations etc...) car moi ca marche.
Je me doute que tu ne peux pas upload ton code mais si tu peux essaie de le faire.
Ou bien comme je te l'ai déjà dis le nom de dommaine de ton email peut être le problème.
Lance ce code en local :
<?php $Adressemail="mon@email.ici"; $headers = 'From: '.$email.' <'.$Adressemail.'>'."\r\n\r\n"; $objet = "Demos"; //Envoyer le message $mail = mail($Adressemail, $objet, $messages, $headers); ?>
Et si ca ne marche pas le problème vient surement des conditions auquelles tu es en local (configurations etc...) car moi ca marche.
Je me doute que tu ne peux pas upload ton code mais si tu peux essaie de le faire.
Ou bien comme je te l'ai déjà dis le nom de dommaine de ton email peut être le problème.