Je suis un peu novice en php, et j'essaye en vain de créer un formulaire de contact tout simple pour un site...
Tout fonctionne presque, a part la vérification des champs vides : seul la vérification de mon champ 'message' est prise en compte, mais pas le champ 'name' !!! o_O
Voici le code php :
<?php
if(!$_POST) exit;
$email = $_POST['email'];
//$error[] = preg_match('/\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b/i', $_POST['email']) ? '' : 'INVALID EMAIL ADDRESS';
if(!eregi("^[a-z0-9]+([_\\.-][a-z0-9]+)*" ."@"."([a-z0-9]+([\.-][a-z0-9]+)*)+"."\\.[a-z]{2,}"."$",$email )){
$error.="Adresse e-mail invalide !";
$errors=1;
}
if($errors==1) echo $error;
else{
$values = array ('name','email','message','phone');
$required = array('name','email','message');
$your_email = "[email protected]";
$email_subject = "Nouveau Message de : ".$_POST['name'];
$email_headers="From: $email";
$email_content = "Nouveau message :\n";
foreach($values as $key => $value){
if(in_array($value,$required)){
if ($key != 'name' && $key != 'message') {
if( empty($_POST[$value]) ) { echo 'Merci de remplir tout les champs requis !'; exit; }
}
$email_content .= $value.': '.$_POST[$value]."\n";
}
}
if(@mail($your_email,$email_subject,$email_content,$email_headers)) {
echo 'Votre message a bien été Envoyé !';
} else {
echo 'ERROR!';
}
}
?>
j'ai du faire une erreur de syntaxe ou autre (certainement sur la ligne " if ($key != 'name' && $key != 'message') { "), mais je ne parvient pas à trouver la solution ???Si quelqu'un avait une solution, ça m'aiderai beaucoup.... ^_^
Merci d'avance.