SMTP server response: 553

kmilebel Messages postés 7 Date d'inscription   Statut Membre Dernière intervention   -  
 Lithium -
Bonjour,
je n'arrive pas a configurer mon SMTP:
->Warning: mail() [function.mail]: SMTP server response: 553 We do not relay non-local mail, sorry

je travail avec xampp, joomla, et mercury
j'ai bien paramétré le fichier php.ini
[mail function]
;For Win32 only.
SMTP = smtp.gmail.com
smtp_port = 25

; For Win32 only.
sendmail_from = XXXXXX@gmail.com

et le fichier sendmail.ini
smtp_server = smtp.gmail.com

Merci de votre aide

copie de mon formulaire pour l'envoi:

<?php
$destinataire = "XXXXX@gmail.com";
// copie ?
$copie = "oui";
$err_formulaire = true;
$reponse = NULL;

// Messages de confirmation du mail
$message_envoye = "Votre message a bien été envoyé !";
$message_non_envoye = "L'envoi du mail a échoué, veuillez réessayer SVP.";

// Message d'erreur du formulaire
//$message_formulaire_invalide = "Vérifiez que tous les champs soient bien remplis et que l'email soit sans erreur.";


//Cette fonction sert à vérifier la syntaxe d'un email
function IsEmail($email)
{
$pattern = "^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,7}$";
return (eregi($pattern,$email)) ? true : false;
};

// cette fonction sert à nettoyer et enregistrer un texte
function Rec($text)
{
$text = trim($text); // delete white spaces after & before text

// magic quotes ?
if(get_magic_quotes_gpc())$text = stripslashes($text);

return $text;
};

// on récupère tous les champs.
$nom = (isset($_POST['nom'])) ? Rec($_POST['nom']) : '';
$prenom = (isset($_POST['prenom'])) ? Rec($_POST['prenom']) : '';
$telephone = (isset($_POST['telephone'])) ? Rec($_POST['telephone']) : '';
$email = (isset($_POST['email'])) ? Rec($_POST['email']) : '';
$message = (isset($_POST['message'])) ? Rec($_POST['message']) : '';

if (isset($_POST['envoi']))
{
$err_formulaire = false; //pour ne pas réafficher le formulaire si envoi du mail

// On va vérifier les variables et l'email ...
// soit l'email est vide si erroné, soit il vaut l'email entré
if(!IsEmail($email)) {$email = ''; $err_formulaire = true;}

if (($nom != '') && ($email != '')&& ($message != ''))
{
// les 4 variables sont remplies, on génère puis on envoie le mail
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/plain; charset=iso-8859-1\r\n";
$headers .= 'From: '.$nom.' <'.$email.'>' . "\r\n";

// envoyer une copie au visiteur ?
if ($copie == 'oui')
{
$cible = $destinataire.','.$email;
}
else
{
$cible = $destinataire;
};

// Envoi du mail
if (mail($cible, $message, $headers))
{
$reponse = $message_envoye;
}
else
{
$reponse = $message_non_envoye;
};
}
else
{
// une des 3 variables (ou plus) est vide ...
$reponse = $message_formulaire_invalide;
$err_formulaire = true; // sert pour remplir le formulaire en cas d'erreur si besoin
};
}; // fin du if (!isset($_POST['envoi']))
?>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Réservation lentilles</title>
</head>

<body>

<?php
if (isset($reponse))
{?>
<p style="font-family:Comic Sans MS, Helvetica, sans-serif; font-size:14px;"><?php echo $reponse;?></p>
<?php }

if ($err_formulaire)
{?>
<form form name="formulaire"style="font-family:Comic Sans MS,geneva;" id="contact" method="post" action="">
<fieldset style="background-color:#F0F07F; width: 680px;">
<legend align=top> Réservation lentilles : </legend>

<br>

<table style="width: 430px; height: 50px;" border="0">

<tr><u>Vos coordonneés :</u></tr>
<td></td>
<tr>
<td><label for="nom">Nom:</label></td>
<td><input type="text" id="nom" name="nom" value="<?php echo htmlentities($nom)?>" tabindex="1" /></td>
</tr>
<tr>
<td><label for="prenom">Prénom:</label></td>
<td><input type="text" id="prenom" name="prenom" value="<?php echo htmlentities($prenom)?>" tabindex="2" /></td>
</tr>

<tr>
<td><label for="telephone">Téléphone</label></td>
<td><input type="text" id="telephone" name="telephone" value="<?php echo htmlentities($telephone)?>" tabindex="3" /></td>
</tr>

<tr>
<td><label for="email">E-mail :</label></td>
<td><input type="text" id="email" name="email" value="<?php echo htmlentities($email)?>" tabindex="4" /></td>
</tr>
<tr>
<td align=center><label for="message">Message :</label></td>
<td><textarea id="message" name="message" tabindex="20" cols="15" rows="2"><?php echo htmlentities($message)?></textarea></td>
</tr>

<br />
</fieldset>

<table align=center>
<td><div style="text-align:center;"><input type="submit" name="envoi" value="Envoyer" /></div></td>
</table>
</table>
</form>
<?php } ?>
</body>
</html>
A voir également:

1 réponse

Lithium
 
bonjour , je pense que le post est assez ancien mais je vé presenter ma reponse qo mm , le probleme ne viens pas de ton code mais le serveur de mail google n'admet pas d'envoyer des emails externe de cette maniere ==>" We do not relay non-local mail " donc soi tu modifie le serveur smtp dans le php.ini par celui de votre fournisseur d'acces internet , ou bien tu cherche une methode qui consiste a s'authentifier avec un compte gmail valide puis envoyer le mail apres, je ce qu'il existe mais j'ai pas les detailles , dsl , si tu trouve une methode poste la pour l'interet commun ++
0