Formulaire web : impossible de recevoir les messages...

Résolu/Fermé
mimile75 Messages postés 7 Date d'inscription mercredi 25 décembre 2013 Statut Membre Dernière intervention 7 janvier 2014 - 25 déc. 2013 à 20:01
mimile75 Messages postés 7 Date d'inscription mercredi 25 décembre 2013 Statut Membre Dernière intervention 7 janvier 2014 - 26 déc. 2013 à 09:57
Bonjour à tous,

Je suis en train de terminer mon site web conçu avec Wysiwyg web builder (je ne connais rien en programmation) et les premiers tests sont vraiment top. Cela dit, j'ai un problème avec mon formulaire de contact.

Celui-ci se trouve sur une page qui est bien en .php
Mais lorsque je fais un test pour m'envoyer un message sur ma boite mail via ce formulaire, je ne le reçois jamais...
Cela viendrait-il d'OVH, qui héberge mon site ? Genre : php ne serait pas activé ? (je ne comprends rien à tout ce b**del, je vous l'avoue...)
Qu'en pensez-vous ?

Je vous donnerai d'autres infos, selon vos instructions.

Merci d'avance pour votre aide,
Mimile
A voir également:

3 réponses

cddu33 Messages postés 1269 Date d'inscription vendredi 11 janvier 2008 Statut Membre Dernière intervention 8 septembre 2015 256
25 déc. 2013 à 20:08
envoi le code qu'il y a dans le fichier php
0
mimile75 Messages postés 7 Date d'inscription mercredi 25 décembre 2013 Statut Membre Dernière intervention 7 janvier 2014 1
25 déc. 2013 à 20:33
Ok. Alors... Je suis un gros débutant, désolé.
J'ai deux codes (qui sont différents et je n'y comprends rien !) :
1. : le code source de la page web publiée via OVH, qui héberge mon site
2. : le code visible via Wysiwyg Web Builder, lorsque je suis encore en train de travailler ma page.

Dans la première, aucune trace de php (sauf l'extension qui est bien en .php), dans la seconde, j'ai du php.

Duquel as-tu besoin ?
:)
0
mimile75 Messages postés 7 Date d'inscription mercredi 25 décembre 2013 Statut Membre Dernière intervention 7 janvier 2014 1
26 déc. 2013 à 09:57
Est-ce ceci dont tu as besoin ?

<?php
function ValidateEmail($email)
{
$pattern = '/^([0-9a-z]([-.\w]*[0-9a-z])*@(([0-9a-z])+([-\w]*[0-9a-z])*\.)+[a-z]{2,6})$/i';
return preg_match($pattern, $email);
}

if ($_SERVER['REQUEST_METHOD'] == 'POST')
{
$mailto = 'monadresse@gmail.com';
$mailfrom = isset($_POST['email']) ? $_POST['email'] : $mailto;
$subject = 'Website form';
$message = 'Values submitted from web site form:';
$success_url = './merci.html';
$error_url = './sorry.html';
$error = '';
$eol = "\n";
$max_filesize = isset($_POST['filesize']) ? $_POST['filesize'] * 1024 : 1024000;
$boundary = md5(uniqid(time()));

$header = 'From: '.$mailfrom.$eol;
$header .= 'Reply-To: '.$mailfrom.$eol;
$header .= 'MIME-Version: 1.0'.$eol;
$header .= 'Content-Type: multipart/mixed; boundary="'.$boundary.'"'.$eol;
$header .= 'X-Mailer: PHP v'.phpversion().$eol;
if (!ValidateEmail($mailfrom))
{
$error .= "The specified email address is invalid!\n<br>";
}

if (!empty($error))
{
$errorcode = file_get_contents($error_url);
$replace = "##error##";
$errorcode = str_replace($replace, $error, $errorcode);
echo $errorcode;
exit;
}

$internalfields = array ("submit", "reset", "send", "captcha_code");
$message .= $eol;
$message .= "IP Address : ";
$message .= $_SERVER['REMOTE_ADDR'];
$message .= $eol;
foreach ($_POST as $key => $value)
{
if (!in_array(strtolower($key), $internalfields))
{
if (!is_array($value))
{
$message .= ucwords(str_replace("_", " ", $key)) . " : " . $value . $eol;
}
else
{
$message .= ucwords(str_replace("_", " ", $key)) . " : " . implode(",", $value) . $eol;
}
}
}

$body = 'This is a multi-part message in MIME format.'.$eol.$eol;
$body .= '--'.$boundary.$eol;
$body .= 'Content-Type: text/plain; charset=ISO-8859-1'.$eol;
$body .= 'Content-Transfer-Encoding: 8bit'.$eol;
$body .= $eol.stripslashes($message).$eol;
if (!empty($_FILES))
{
foreach ($_FILES as $key => $value)
{
if ($_FILES[$key]['error'] == 0 && $_FILES[$key]['size'] <= $max_filesize)
{
$body .= '--'.$boundary.$eol;
$body .= 'Content-Type: '.$_FILES[$key]['type'].'; name='.$_FILES[$key]['name'].$eol;
$body .= 'Content-Transfer-Encoding: base64'.$eol;
$body .= 'Content-Disposition: attachment; filename='.$_FILES[$key]['name'].$eol;
$body .= $eol.chunk_split(base64_encode(file_get_contents($_FILES[$key]['tmp_name']))).$eol;
}
}
}
$body .= '--'.$boundary.'--'.$eol;
mail($mailto, $subject, $body, $header);
header('Location: '.$success_url);
exit;
}
?>
0