Formulaire impossible

Fermé
Lulzim85 Messages postés 260 Date d'inscription samedi 2 mai 2009 Statut Membre Dernière intervention 16 avril 2020 - 30 mars 2016 à 03:46
Lulzim85 Messages postés 260 Date d'inscription samedi 2 mai 2009 Statut Membre Dernière intervention 16 avril 2020 - 30 mars 2016 à 14:06
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

Regis59 Messages postés 21143 Date d'inscription mardi 27 juin 2006 Statut Contributeur sécurité Dernière intervention 22 juin 2016 1 321
30 mars 2016 à 11:05
$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?
0
Lulzim85 Messages postés 260 Date d'inscription samedi 2 mai 2009 Statut Membre Dernière intervention 16 avril 2020 12
Modifié par Lulzim85 le 30/03/2016 à 13:48
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);
0
Lulzim85 Messages postés 260 Date d'inscription samedi 2 mai 2009 Statut Membre Dernière intervention 16 avril 2020 12
30 mars 2016 à 13:57
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....
0
Lulzim85 Messages postés 260 Date d'inscription samedi 2 mai 2009 Statut Membre Dernière intervention 16 avril 2020 12
30 mars 2016 à 14:06
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
0