[RESOLU] Formulaire de contact en PHP

Eléphant du PHP | 61 Messages

15 oct. 2017, 17:45

Bonjour les sauveurs...

A la retraite depuis 2007 (ex électronicien en électronique de puissance)
je me suis mis au HTML puis au PHP pour mon plus grand plaisir !
J'ai actuellement 15 petits sites (sur Free)
Certains de ces sites ont un formulaire de contact en PHP (pour éviter d'ouvrir les mails perso.)
Ce formulaire fonctionne chez OVH mais ne fonctionne plus chez Free !
J'ai un message "une erreur s'est produite..." (voir php ci-dessous)
Mes compétences en PHP sont au bout de leur limite !!!
Pouvez vous me guider pour résoudre ce problème ?
Bien cordialement
Paul

<?php
if(isset($_POST['email']) and isset($_POST['sujet']) and isset($_POST['message']))
{
$destinataire = '[email protected]';
$email = htmlentities($_POST['email']);
if(preg_match('#^(([a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+\.?)*[a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i',str_replace('&amp;','&',$email)))
{
$sujet = 'Contact: '.stripslashes($_POST['sujet']);
$message = stripslashes($_POST['message']);
$headers = "From: <".$email.">\n";
$headers .= "Reply-To: ".$email."\n";
$headers .= "Content-Type: text/plain; charset=\"iso-8859-1\"";
if(mail($destinataire,$sujet,$message,$headers))
{
echo "
<bgcolor=#cccccc>
<p align='center'>
<br><br><br><br>
<strong>Votre message a bien &eacute;t&eacute; envoy&eacute.
<br><br>
Merci de votre participation.
</strong>
<br><br><br>
<a href='index.html'>Accueil</a>
</p>";
}
else
{
echo "<p align='center'>
<br><br><br><strong style=\"color:#ff0000;\">Une erreur c'est produite lors de l'envois du message.</strong>
</p>";
}
}
else
{
echo "<p align='center'>
<br><br><br>
<strong style=\"color:#ff0000;\">L'email que vous avez entr&eacute; est invalide.</strong>
</p>";
}
}
else
{
?>

<body bgcolor=#cccccc>
<form action="" method="post">

<p align="center"><img src="images/remi_bc.jpg" width="700">
<br><br>
Rémi vous invite à laisser un message...
</p>

<fieldset>
<legend>Formulaire de contact</legend>

<table align="center" bgcolor="lightgreen" width="300" border="0">
<tr><td>

<label for="email" style="display:inline-block;width:150px;"><br><strong>Votre Email:</strong></label>
<input type="text" name="email" id="email" size="40"><br><br />

<label for="sujet" style="display:inline-block;width:150px;"><strong>Sujet:</strong></label>
<input type="text" name="sujet" id="sujet" size="60"><br><br />

<label for="message"><strong>Message:</strong> <font size="-1">(400 caractères)</font></label><br />
<textarea cols="80" rows="5" name="message" id="message"></textarea><br />
<p align="center">
<input type="submit" value="Envoyer le message" />
<br><br>
<a href="index_00.html">Accueil</a>
</p>
</td></tr>
</table>
</fieldset>
</form>
<?php
}
?>

*** Merci pour votre aide***

Mammouth du PHP | 1967 Messages

16 oct. 2017, 08:25

Si le même script fonctionne chez ovh mais pas sur free, je pense que free doit bloquer la fonction mail volontairement.
Spols
pour les fan de rubik's cube ou pour les curieux ==> le portail francophone du rubik's cube

Eléphant du PHP | 61 Messages

16 oct. 2017, 12:39

Bonjour Spols,

J'ai essayé un autre script en php et le résultat est le même chez Free
"Warning: mail() [function.mail]: mail server down in /mnt/102/sda/1/9/p.v/remi/form.php on line 14"

Par contre, sur un site plus ancien, j'ai un formulaire en html, avec la commande ci-dessous
"<form method="POST" name="frmportail" action="http://perso0.free.fr//cgi-bin/form2mail.pl">"
Cela fonctionne toujours, mais cela vous envoie sur votre mail, dans le dossier ou est hébergé votre site !
Je ne peux pas mettre une autre adresse !!!

Désolant.
Je classe cette affaire
Merci d'avoir répondu
Cord. Paul