if ($_POST['name'] and $_POST['email'] and $_POST['message'])
par :if ((isset($_POST['name'])) AND (!empty($_POST['name'])) AND (isset($_POST['email'])) AND (!empty($_POST['email'])) AND (isset($_POST['message'])) AND (!empty($_POST['message'])))<div id="content" class="pages"> <h1>Erreur - Captcha</h1>
<hr /> <br /> <br />
<div style="margin-bottom: 10px; background: #ffb2b2; padding: 6px; height:auto; border: 2px solid #ff8080; border-radius: 5px; -moz-border-radius: 5px; -webkit-border-radius: 5px;"><div style="text-align:center">Pour procéder à la validation du formulaire, merci de remplis le captcha. <a href="javascript:history.go(-1)" alt="retour" />Retour.</a> </div> </div> <br /> <br /> <br /><br /> Ce qui donne ceci, pas très réussi ! Peut-être que ce sera mieux quand on aura mis le fond de page derrière. Le footer se décolle Code : Tout sélectionner
.footer
{
position: absolute;
bottom: 0px;
}<?php include('header.php');
// 1 : connexion BDD
$PARAM_hote='localhost'; // le chemin vers le serveur
$PARAM_port='3306';
$PARAM_nom_bd='captcha'; // le nom de votre base de données
$PARAM_utilisateur='root'; // nom d'utilisateur pour se connecter
$PARAM_mot_passe=''; // mot de passe de l'utilisateur pour se connecter
$connexion = new PDO('mysql:host='.$PARAM_hote.';port='.$PARAM_port.';dbname='.$PARAM_nom_bd, $PARAM_utilisateur, $PARAM_mot_passe);
try
{
$connexion = new PDO('mysql:host='.$PARAM_hote.';dbname='.$PARAM_nom_bd, $PARAM_utilisateur, $PARAM_mot_passe);
}
catch(Exception $e)
{
echo 'Erreur : '.$e->getMessage().'<br />';
echo 'N° : '.$e->getCode();
}
// 2 : recuperation de ce qu'a dit l'utilisateur sur le captcha
if ((isset($_POST['id'])) AND (!empty($_POST['id'])))
{
$id_captcha = $_POST['id'];
if ((isset($_POST['captcha'])) AND (!empty($_POST['captcha'])))
{
$reponse_captcha = $_POST['captcha'];
}
else //si l'utilisateur na pas répondu au captcha
{
die('Veuillez remplir le captcha. <a href="javascript:history.go(-1)" alt="retour" /> Retour. </a>');
}
}
else //si on a pas reçu l'id via hidden
{
die('Erreur lors du chargement de la page. <a href="javascript:history.go(-1)" alt="retour" /> Retour. </a>');
}
//si on arrive ici c'est qu'on possède l'id du captcha et la solution entrée par l'user
//3 : recuperation de la vrai solution du captcha
$sql = 'SELECT solution FROM captcha WHERE id ='.$id_captcha;
$req = $connexion->query($sql);
$req->setFetchMode(PDO::FETCH_OBJ);
$data = $req->fetch();
$solution= $data->solution;
$req->closeCursor();
//4 : comparaison solution/reponse user
//rappel : $reponse_captcha contient la reponse de l'user
// et $solution contient la vrai solution (de la BDD)
if ($reponse_captcha != $solution)
{
die('Erreur dans la recopie du captcha ! <a href="javascript:history.go(-1)" alt="retour"> Retour. </a>');
}
// 5 : envoi de l'e-mail
if ((isset($_POST['name'])) AND (!empty($_POST['name'])) AND (isset($_POST['email'])) AND (!empty($_POST['email'])) AND (isset($_POST['message'])) AND (!empty($_POST['message'])))
{
$result = true;
$name = $_POST['name'];
$email = trim($_POST['email']);
$message = $_POST['message'];
$to = '[email protected]';
$subject = 'Formulaire de contact';
$mailbody .= "Name: ".$name."\n";
$mailbody .= "E-mail: ".$email."\n\n";
$mailbody .= "Message: ".$message."\n\n";
$mailbody .= "IP: ".getenv("REMOTE_ADDR")."\n";
$mailbody .= "Browser: ".getenv("HTTP_USER_AGENT")."\n\n";
$use_phpmailer = true; // Activer/Désactiver l'utilisation de la fonction ()mail
// We are going to check the fields...
if(check_email_address($email) and check_value($name) and check_value($message)) {
// Paramètres SMTP
if($use_smtp) {
// Hail PHPMailer!
$mail = new phpmailer();
$mail->Mailer = "smtp";
$mail->Host = "smtp.gmail.com"; // SMTP host
$mail->SMTPAuth = true;
$mail->Username = "@gmail.com";
$mail->Password = "";
$mail->Timeout = 30;
$mail->From = $email;
$mail->FromName = $name;
$mail->AddAddress($to);
$mail->Subject = $subject;
$mail->Body = $mailbody;
$success = $mail->Send();
} else {
$success = mail($to, $subject, $mailbody); // $to, $subject, $mailbody
}
// Succès / Erreur
if($success) {
$output = 'Message envoyé, nous traiterons votre demande dans les plus bref délais.';
$contact_class = 'contact-ok';
} else { // Ho non ! Erreur
$output = 'Il y a eu une erreur à l\'envoie de votre message, réessayez plus-tard.';
$contact_class = 'contact-error';
}
} else { // Valeurs invalides !
$output = 'Merci de remplir les champs du formulaire correctement.';
$contact_class = 'contact-error';
}
}
else
{
echo 'Veuillez remplir correctement le formulaire svp. <a href="javascript:history.go(-1)" alt="retour" > Retour. </a>';
include('footer.php')
die();
}
include('footer.php');
?>
et dit moi ce que ça donne. Normalement la condition est formelle et l'e-mail ne s'envoit pas si les infos ne sont pas ok, donc si ça ne marche pas je donne ma langue au chat ... Le nouveau message d'erreur sera moche, c'est le dernier echo de la page, tu peux le modifier comme tu le souhaites.<?php include('header.php');
// 1 : connexion BDD
$PARAM_hote='Chemin'; // le chemin vers le serveur
$PARAM_port='3306';
$PARAM_nom_bd='Nom'; // le nom de votre base de données
$PARAM_utilisateur='User'; // nom d'utilisateur pour se connecter
$PARAM_mot_passe='Mot de passe'; // mot de passe de l'utilisateur pour se connecter
$connexion = new PDO('mysql:host='.$PARAM_hote.';port='.$PARAM_port.';dbname='.$PARAM_nom_bd, $PARAM_utilisateur, $PARAM_mot_passe);
try
{
$connexion = new PDO('mysql:host='.$PARAM_hote.';dbname='.$PARAM_nom_bd, $PARAM_utilisateur, $PARAM_mot_passe);
}
catch(Exception $e)
{
echo 'Erreur : '.$e->getMessage().'<br />';
echo 'N° : '.$e->getCode();
}
// 2 : recuperation de ce qu'a dit l'utilisateur sur le captcha
if ((isset($_POST['id'])) AND (!empty($_POST['id'])))
{
$id_captcha = $_POST['id'];
if ((isset($_POST['captcha'])) AND (!empty($_POST['captcha'])))
{
$reponse_captcha = $_POST['captcha'];
}
else //si l'utilisateur na pas répondu au captcha
{
die('Veuillez remplir le captcha. <a href="javascript:history.go(-1)" alt="retour" /> Retour. </a>');
}
}
else //si on a pas reçu l'id via hidden
{
die('Erreur lors du chargement de la page. <a href="javascript:history.go(-1)" alt="retour" /> Retour. </a>');
}
//si on arrive ici c'est qu'on possède l'id du captcha et la solution entrée par l'user
//3 : recuperation de la vrai solution du captcha
$sql = 'SELECT solution FROM captcha WHERE id ='.$id_captcha;
$req = $connexion->query($sql);
$req->setFetchMode(PDO::FETCH_OBJ);
$data = $req->fetch();
$solution= $data->solution;
$req->closeCursor();
//4 : comparaison solution/reponse user
//rappel : $reponse_captcha contient la reponse de l'user
// et $solution contient la vrai solution (de la BDD)
if ($reponse_captcha != $solution)
{
die('Erreur dans la recopie du captcha ! <a href="javascript:history.go(-1)" alt="retour"> Retour. </a>');
}
// 5 : envoi de l'e-mail
if ((isset($_POST['name'])) AND (!empty($_POST['name'])) AND (isset($_POST['email'])) AND (!empty($_POST['email'])) AND (isset($_POST['message'])) AND (!empty($_POST['message'])))
{
$result = true;
$name = $_POST['name'];
$email = trim($_POST['email']);
$message = $_POST['message'];
$to = '[email protected]';
$subject = 'Formulaire de contact';
$mailbody .= "Name: ".$name."\n";
$mailbody .= "E-mail: ".$email."\n\n";
$mailbody .= "Message: ".$message."\n\n";
$mailbody .= "IP: ".getenv("REMOTE_ADDR")."\n";
$mailbody .= "Browser: ".getenv("HTTP_USER_AGENT")."\n\n";
$use_phpmailer = true; // Activer/Désactiver l'utilisation de la fonction ()mail
// We are going to check the fields...
if(check_email_address($email) and check_value($name) and check_value($message)) {
// Paramètres SMTP
if($use_smtp) {
// Hail PHPMailer!
$mail = new phpmailer();
$mail->Mailer = "smtp";
$mail->Host = "smtp.gmail.com"; // SMTP host
$mail->SMTPAuth = true;
$mail->Username = "[email protected]";
$mail->Password = "mot_de_passe";
$mail->Timeout = 30;
$mail->From = $email;
$mail->FromName = $name;
$mail->AddAddress($to);
$mail->Subject = $subject;
$mail->Body = $mailbody;
$success = $mail->Send();
} else {
$success = mail($to, $subject, $mailbody); // $to, $subject, $mailbody
}
// Succès / Erreur
if($success) {
$output = 'Message envoyé, nous traiterons votre demande dans les plus bref délais.';
$contact_class = 'contact-ok';
} else { // Ho non ! Erreur
$output = 'Il y a eu une erreur à l\'envoie de votre message, réessayez plus-tard.';
$contact_class = 'contact-error';
}
} else { // Valeurs invalides !
$output = 'Merci de remplir les champs du formulaire correctement.';
$contact_class = 'contact-error';
}
}
else
{
echo 'Veuillez remplir correctement le formulaire svp. <a href="javascript:history.go(-1)" alt="retour" > Retour. </a>';
include('footer.php')
die();
}
include('footer.php');
?>Tu vois qqch qui ressemblerai à ça ?Erreur 500
L'erreur 500, est une erreur de configuration d'un script cgi que vous avez déposé par ftp dans le répertoire cgi-bin. Cette erreur survient lorsque vous avez donné de mauvaise fonction dans le script. En fait le serveur va le lire et lorsqu'il trouve une erreur renvoie a la page INTERNAL SERVER ERROR
Erreur serveur
Le site Web a rencontré une erreur lors de l'extraction de http://www.heberg-pics.com/traitement. Cela peut être dû à une opération de maintenance ou à une configuration incorrecte.
Voici quelques suggestions :
Actualisez cette page Web ultérieurement.
Erreur HTTP 500 (Internal Server Error) : Une situation inattendue s'est produite tandis que le serveur tentait de traiter la demande.