Formulaire impossible [Fermé]

Signaler
Messages postés
258
Date d'inscription
samedi 2 mai 2009
Statut
Membre
Dernière intervention
16 avril 2020
-
Messages postés
258
Date d'inscription
samedi 2 mai 2009
Statut
Membre
Dernière intervention
16 avril 2020
-
Bonjour à tous !

J'ai un petit soucis avec un formulaire qui ne veut pas s'envoyer par mail !

Petit résumé :
- J'ai une page contact.html qui possède le formulaire
- J'ai une page cible.php qui réceptionne le formulaire et qui devrait l'envoyer par mail

Mais j'ai une erreur qui s'affiche :
"Warning: mail(/home/u520425294/.logs/php_mail.log): failed to open stream: No such file or directory in /home/u520425294/public_html/cible.php on line 77"

Sauf que c'est impossible pour moi de trouver l'erreur qui se trouve en ligne 77...

Le fichier cible.php fonctionne bien, car j'ai inséré des conditions (comme quoi tout doit être rempli sinon le formulaire n'est pas envoyé). Cette condition fonctionne puisque quand je ne remplis pas tous les champs obligatoire je reçois le message d'erreur.

Voici le code que j'utilise (basique je sais) :

					<?php 
					if(isset($_POST) && isset($_POST['nom']) && isset($_POST['prenom']) && isset($_POST['email']) && isset($_POST['message'])){
					extract($_POST);
					if(!empty($nom) && !empty($prenom) && !empty($email) && !empty($message)) {
					$destinataire="eqt1srqpceptua0@jetable.org";
					$sujet="Page de contact";
					$msg="Ci-joint un nouveau message \n 
					Nom : $nom \n
					Prenom : $prenom \n
					Email : $email \n
					Message : $message";
					$entete="From: $nom \n Reply-To: $email";
					mail($destinataire,$sujet,$msg,$entete);
					}
else{
						echo "Vous avez pas tout remplis";
					}
					}
					?>

LA LIGNE 77 CORRESPOND A LA LIGNE 15 CI-DESSUS.

Autre info : Je ne travaille pas en local (J'ai réussi à trouver un petit hébergeur ^^)

Voilà...toute aide sera prise avec joie.

Merci.

3 réponses

Messages postés
21123
Date d'inscription
mardi 27 juin 2006
Statut
Contributeur sécurité
Dernière intervention
22 juin 2016
1 309
$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
$headers .= 'FROM:' . htmlspecialchars($_POST['email']);
$to = 'eqt1srqpceptua0@jetable.org'; // Insérer votre adresse email ICI
$subject = 'Message reçu';
$message_content = '
<table>
<tr>
<td><b>Emetteur du message:</b></td>
</tr>
<tr>
<td>'. htmlspecialchars($_POST['nom']) . '</td>
</tr>
<tr>
<tr>
<td><b>E-mail:</b></td>
</tr>
<tr>
<td>'. htmlspecialchars($_POST['email']) . '</td>
</tr>
<tr>
<td><b>Contenu du message:</b></td>
</tr>
</table>
';
mail($to, $subject, $message_content, $headers);


Tu peux juste faire le test avec ce bout de code dans le if?
Messages postés
258
Date d'inscription
samedi 2 mai 2009
Statut
Membre
Dernière intervention
16 avril 2020
13
Bonjour,

Malheureusement ça ne fonctionne pas. J'ai le code d'erreur : Warning: mail(/home/u520425294/.logs/php_mail.log): failed to open stream: No such file or directory in /home/u520425294/public_html/cible.php on line 94


La ligne 94 correspond à : mail($to, $subject, $message_content, $headers);
Messages postés
258
Date d'inscription
samedi 2 mai 2009
Statut
Membre
Dernière intervention
16 avril 2020
13
Info complémentaire : J'ai vu sur internet qu'une telle erreur pourrait venir du fait que mon fichier n'existe pas...

Sauf que quand je ne complète pas entièrement le formulaire, le message "Vous n'avez pas tous remplis" s'affiche bien.

Donc, le fichier est trouvé lorsque la première conditions est activée, mais pas lorsque la deuxième est remplie....

Je suis vraiment perdu....
Messages postés
258
Date d'inscription
samedi 2 mai 2009
Statut
Membre
Dernière intervention
16 avril 2020
13
Je m'impressionne de plus en plus...

Avec le code
<?php 
					if(isset($_POST) && isset($_POST['nom']) && isset($_POST['prenom']) && isset($_POST['email']) && isset($_POST['message'])){
					extract($_POST); }
					if(!empty($nom) && !empty($prenom) && !empty($email) && !empty($message)) {
						$destinataire="eqt1srqpceptua0@jetable.org";
						$sujet="Page de contact";
						$msg="Ci-joint un nouveau message \n 
						Nom : $nom \n
						Prenom : $prenom \n
						Email : $email \n
						Message : $message";
						$entete="From: $nom \n Reply-To: $email";
						mail($destinataire,$sujet,$msg,$entete) ;}
					else{
						echo "Vous avez pas tout remplis";
					}
					?>


Je reçois bien les mails sur ma boîte mail....MAIS, j'ai quand même l'erreur qui s'affiche dans la page : Warning: mail(/home/u520425294/.logs/php_mail.log): failed to open stream: No such file or directory in /home/u520425294/public_html/cible.php on line 77