Erreur dans mail

NinitDut
Invité n'ayant pas de compte PHPfrance

11 déc. 2021, 22:04

Bonjour,

Dans le cadre de on projet de fi d'étude, je dois faire une lan, je suis actuellement en train de faire le site web. J'essaye d'envoyer un mail via une page de contact (code ci dessous). J'utilise WampServeur. Quand j'essaye d'envoyer un mail j'ai l'erreur comme quoi mes ports sont bloquer. Le port permettant une envoyer SMTP est le port 25. J'ai crée une règle dans mon pare-feu qui ouvre le port 25 ainsi que le port 587 et 465 (autres port permettant l'envoie d'un mail si le port 25 ne répond pas ou est bloquer par le FAI). J'ai a chaque fois modifié mon php.ini et redémarrer les services mais toujours la même erreur et impossible d'envoyer un mail. je vous joins également la partie de mon php.ini. A vrai je bloque un peu là...

<?php
include 'template/menu.php';
?>

<body>
<div class="container">
<h1>Contact</h1>
<p>Si vous avez la moindre question, contacter nous via le formulaire ci dessous</p>
<form>
<div form="mb-3">
<label form="">Email</label><br>
<input type="email" name="email" form="container" id="email" required><br>
</div>
<div form="mb-3">
<label form="">Message</label><br>
<textarea name="message" form="container" rows="10%" cols="100%" id="message" required></textarea><br>
</div>
<button type="submit" class="btn btn-primary">Envoyer</button>
</form>
<?php
mail('', 'Envoi depuis la page Contact', $_POST['mail'], $_POST['email']);
?>
<P>Vous pouvez égalemnt nous joindre par mail : </P>
</div>
</body>



php.ini :

[mail function]
; For Win32 only.
;
SMTP =
;
smtp_port = 25

; For Win32 only.
;
sendmail_from =""

Merci à ceux qui vont pouvoir m'aidé.

Eléphant du PHP | 337 Messages

12 déc. 2021, 00:30

Pour ce genre de truc, je mets l'adresse de mon fournisseur d'accès. Par exemple : SMTP = smtp.free.fr
Chez moi, ça marche, ptêt chez toi aussi ?

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

14 déc. 2021, 01:20

Il existe aussi 2 solutions simples sous Windows :
1) indiquer le SMTP de ton FAI dans le fichier php.ini (fais un phpinfo() pour trouver où il est)
Voici un exemple si tu es chez Orange :

Code : Tout sélectionner

; For Win32 only. ; http://php.net/smtp SMTP = smtp.orange.fr ; http://php.net/smtp-port smtp_port = 25
- Free : smtp.free.fr
- Orange : smtp.orange.fr
- Bouygues : smtp.bbox.fr
- SFR : smtp.sfr.fr

2) utiliser une librairie en PHP type PHPMailer et indiquer un SMTP externe (comme Gmail par exemple si tu as un compte Gmail).
https://github.com/PHPMailer/PHPMailer
Tuto : https://www.berejeb.com/2009/09/envoyer ... -de-gmail/
Quand tout le reste a échoué, lisez le mode d'emploi...