Vous n'êtes pas identifié(e).
Bonjour à vous,
Mes connaissances en PHP sont niveau zéro.
Je viens de créer , après plusieurs semaines de prise de tête, un site
J'ai réussi à faire des formulaires de contact, avec captcha en faisant surtout des copier coller et en cherchant de manière empirique, ligne par ligne, à personnaliser le tout.
L'url de mon image de captcha au chargement est la suivante. exemple :
http://www.climatjusticesociale.org/cap ... ?mot=UEWYV
Autrement dit les caractères de ma captcha s'affiche en toutes lettres, alors un robot peut les lire et donc ma protection ne sert à rien!!!!!
Ensuite le bouton Changer fait recharger l'image de ma captcha avec un paramètre "r" :
http://www.climatjusticesociale.org/cap ... .php?r=892
Mais dans ce cas mon script image.php n'affiche pas de lettres donc il ne renouvelle pas mon code?????
Je place ci-dessous l'entier de mon code de captcha index.php (en espérant que c'est cela qu'il vous faut pour pouvoir m'aider.
Ceci dit je trouve votre anti.spam carrément génial, est-il disponible pour des néophytes comme moi?
Merci à vous.
PS: J'ai cherché à mettre les balises [ code=php] et [ /code=php], même ça je n'y arrive pas, à chaque fois un message d'erreur me disait qu'il manquait la balise de fermeture???
Réellement désolé.
<body bgcolor='green'>
<!DOCTYPE>
<html>
<head>
<title>Contact</title>
<link rel="stylesheet" type="text/css" href="style.css" />
<script src="jquery.js"></script>
</head>
<?php
$nom = '';
$email = '';
$objet = '';
$message = '';
$corps = '';
$rand = '';
$chaine = "ABCEFGHKLMNPQRTUVWXYZ";
for($i=0; $i<5; $i++) { // on genere les 5 caracteres
$carac = strlen($chaine);
$carac = rand(0,($carac-1));
$rand .= $chaine[$carac];
}
if(isset($_POST['submit'])){
$nom = $_POST['nom'];
$email = $_POST['email'];
$objet = $_POST['objet'];
$message = $_POST['message'];
$titre = "".$objet."\n";
$tete = "From:".$email;
$corps.= "Nom : ".$nom."\n";
$corps.= "Email : ".$email."\n";
$corps.= "Objet : ".$objet."\n";
$corps.= "Message : ".$message."\n";
if(mail("cjs@climatjusticesociale.org", $titre, stripslashes($corps), $tete)) {
?>
<script>
$(document).ready(function(){
$("#contact_form").slideUp(1000);
$('.result').slideDown('slow', function() {
$("p").append("Message envoyé avec succes ! <br /> <a href=\"http://www.climatjusticesociale.org\">Retour au site");
});
});
</script>
<?php
}else {
?>
<script>
$(document).ready(function(){
$("#contact_form").slideUp(1000);
$('.result').slideDown('slow', function() {
$("p").append("Echec de l'envoi <br /> <a href=\"index.php\">Reessayez SVP! ");
$("p").css('color','#FF0000');
});
});
</script>
<?php
}
}
?>
<div id="conteneur">
<div id="formulaire_contact">
<div class="result"><p></p></div>
<form id="contact_form" method="POST" action="index.php">
<center>
<h2>Formulaire de contact</h2>
<table id="tab_form">
<tr>
<td>
<label for="nom">Nom ou Pseudo:</label></td><td><input type="text" name="nom" id="nom" size="38" value='<?php echo stripslashes($nom);?>' />
<br /><span id="msg_nom" class="msg_erreur"></span>
</td>
</tr>
<tr>
<td>
<label for="email">Email :</label></td><td><input type="text" name="email" id="email" size="38" value='<?php echo stripslashes($email);?>'/>
<br /><span id="msg_email" class="msg_erreur"></span>
</td>
</tr>
<tr>
<td>
<label for="objet">Objet :</label></td><td><input type="text" name="objet" id="objet" size="38" value='<?php echo stripslashes($objet);?>'/>
<br /><span id="msg_objet" class="msg_erreur"></span>
</td>
</tr>
<tr>
<td>
<label for="message">Message :</label></td><td><textarea type="text" name="message" id="message" cols="41" rows="12" value='<?php echo stripslashes($message);?>'></textarea>
<br /><span id="msg_message" class="msg_erreur"></span>
</td>
</tr>
<tr>
<td>
<label for="captcha">Saisissez ce code :</label></td><td><input type="text" name="captcha" id="captcha" size="8"/>
<span class="code_captcha">
<img src="image.php?mot=<?php echo $rand;?>" alt="image captcha" id="code_captcha"/>
</span>
<button type="button" onclick="document.getElementById('code_captcha').src = 'image.php?r='+new Date().getMilliseconds();">Changer</button>
<br /><span id="msg_captcha" class="msg_erreur"></span>
</td>
</tr>
<tr><td colspan=2><center><input type="submit" value="Valider" name="submit"/></center></td></tr>
</table><br />
</center>
</form>
</div>
</div>
<script>
function validateEmail(Email) {
var filter = /^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
if (filter.test(Email)) {
return true;
}
else {
return false;
}
}
$(document).ready(function(){
$('form').submit(function(){
var nom = $('#nom').val();
var email = $('#email').val();
var objet = $('#objet').val();
var message = $('#message').val();
var captcha = $('#captcha').val();
if(nom.length == 0){
$('#nom').css('border-color','#FF0000');
$("#msg_nom").fadeIn().text(" Veuillez saisir votre nom !");
return false;
}else{
$('#nom').css('border-color','');
$("#msg_nom").fadeOut();
}
if(email.length == 0){
$('#email').css('border-color','#FF0000');
$("#msg_email").fadeIn().text(" Veuillez saisir votre email !");
return false;
}else if(!validateEmail(email)){
$("#msg_email").fadeIn().text(" Veuillez saisir un email valide !");
return false;
}else{
$('#email').css('border-color','');
$("#msg_email").fadeOut();
}
if(objet.length == 0){
$('#objet').css('border-color','#FF0000');
$("#msg_objet").fadeIn().text(" Veuillez saisir l'objet de votre message !");
return false;
}else{
$('#objet').css('border-color','');
$("#msg_objet").fadeOut();
}
if(message.length == 0){
$('#message').css('border-color','#FF0000');
$("#msg_message").fadeIn().text(" Veuillez saisir votre message !");
return false;
}else{
$('#message').css('border-color','');
$("#msg_message").fadeOut();
}
if(captcha.length == 0){
$('#captcha').css('border-color','#FF0000');
$("#msg_captcha").fadeIn().text(" Veuillez saisir ce code !");
return false;
}else{
var saisi = $('#captcha').val();
if(saisi != '<?php echo $rand;?>' ) {
$('#msg_captcha').fadeIn().text(" Captcha incorrect ! Reesayez");
return false;
}else{
return true;
}
}
});
});
</script>
</body>
</html>
Hors ligne