Page 1 sur 1

Pb authentification Smtp requise

Posté : 18 avr. 2011, 15:03
par 9project
Bonjour à tous!!

Je vais essayer d'expliquer au mieux car en tant qu'administrateur réseau, je ne comprend absolument rien au développement...
Mon soucis:

Un stagiaire en développement est venu créer une nouvelle partie de notre site en php sur un xampp (installé en même temps qu'OCS).
Il a créé une fonction contact dans laquelle on peut envoyer un email pour prendre contact. Malheureusement une connexion au smtp est requise et le message ne part pas ( Voir message d'erreur ci-dessous).

Warning: mail() [function.mail]: SMTP server response: 550 5.7.1 <[email protected]>... Relaying denied. Proper authentication required. in C:\Program Files\OCS Inventory NG\xampp\htdocs\pieceOccasion\vue\vueCentreContact.inc.php on line 35

Voici le code du fichier indiqué dans l'erreur.
<?php
//Si il clique sur "Envoyer", on envoi son message au contact selectionné
if (isset($_REQUEST['validContacter']) && isset($_REQUEST['mailContact']) && 
    !empty($_REQUEST['mailContact']) && isset($_REQUEST['nom']) &&
    !empty($_REQUEST['nom']) && isset($_REQUEST['prenom']) && !empty($_REQUEST['prenom']) &&
    isset($_REQUEST['mail']) && !empty($_REQUEST['mail']) &&
    preg_match('/^(.+)@(.+)\\.(.+)$/', $_REQUEST['mail']) && isset($_REQUEST['mess']) && !empty($_REQUEST['mess'])) {
    
    //On sécurise les variables
    $nom = htmlentities(trim($_REQUEST['nom']));
    $prenom = htmlentities(trim($_REQUEST['prenom']));
    $mailContact = htmlentities(trim($_REQUEST['mailContact']));
    $mail = htmlentities(trim($_REQUEST['mail']));
    $mess = htmlentities(trim($_REQUEST['mess']));
    
    //On défini l'interieur du mail en type html
    $headers = 'From: "XXXX"<[email protected]>'."\n";
    $headers .= 'Content-Type: text/html; charset="iso-8859-1"'."\n";
    $headers .= 'Content-Transfer-Encoding: 8bit';
    
    //Le message qui sera envoyé
    $message = '<html><head><title>Contact Pi&egrave; d\'occasion</title></head>
                        <body>
                             <table>
                                <tr><td align="right"><b>Nom : </b></td><td align="left">'.$nom.'</td></tr>
                                <tr><td align="right"><b>Pr&eacute;nom : </b></td><td align="left">'.$prenom.'</td></tr>
                                <tr><td align="right"><b>E-mail : </b></td><td align="left">'.$mail.'</td></tr>
                                <tr><td align="right"><b>Message : </b></td><td align="left">'.$mess.'</td></tr>
                             </table>
                        </body>
                </html>';
    
    //Envoi du mail
	
    mail($mailContact, 'Contact Piece Occasion', $message, $headers);
}

// suite du code
...
>?
Comment configurer l'authentification SMTP pour l'envoi?

Merci.

Cordialement.

Re: Pb authentification Smtp requise

Posté : 18 avr. 2011, 15:13
par nhachet
L'authentification SMTP est gérée dans le php.ini (voir la section [mail function]). ;)

Re: Pb authentification Smtp requise

Posté : 18 avr. 2011, 15:27
par 9project
Bonjour et merci de votre réponse:

J'ai modifié le php.ini présent dans ce chemin C:\Program Files\OCS Inventory NG\xampp\php et voici ce que j'ai effectué comme modification en cherchant un peu sur le net. Mais j'ai toujours la même erreur...
[mail function]
; For Win32 only.
SMTP = smtp.fr.oleane.com
smtp_port = 25
[email protected]
password=monmdp

; For Win32 only.
sendmail_from = [email protected]
Cordialement

Re: Pb authentification Smtp requise

Posté : 18 avr. 2011, 16:44
par nhachet
Au temps pour moi, après quelques recherches, l'authentification SMTP est gérée lors de l'envoi du message et non dans le PHP.ini. Seule l'adresse du SMTP pointée par la fonction mail() est dans le php.ini.

Beaucoup utilise la librairie Mail du package PEAR pour les mails sur SMTP authentifié.

[Résolu] Pb authentification Smtp requise

Posté : 19 avr. 2011, 09:09
par 9project
Bonjour et merci pour votre aide!!

Ne comprenant vraiment rien à tout ce code, nous avons finalement mis en place en relais smtp connecté au smtp d'orange et cela fonctionne très bien.

Cordialement.