Sécurité PHP :s

Pikachøù Messages postés 9 Date d'inscription   Statut Membre Dernière intervention   -  
Pikachøù Messages postés 9 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour, je voudrais savoir si quelqu'un aurait un script a insérer dans un script php pour que l'utilisateur ne puisse pas envoyer de message avant 10 minutes je parle ici pour mon formulaire de contact !

Merci d'avance

Pikachøù
A voir également:

6 réponses

Heryu Messages postés 567 Date d'inscription   Statut Membre Dernière intervention   62
 
Ton formulaire, tu le mets dans un if(temps<10minutes) > alors la personne ne pourra pas envoyer de formulaire (c'est pour t'expliquer hein, fait pas copier coller :p) !
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
une condition en php de 10 minutes !!

Un script php a un temps d'exécution de quelques dizaines de secondes maxi , et est limité par le serveur.

Donc il te faut trouver une astuce

en posant un cookie par exemple, qui contient la date heure dernier envoi, ensuite tu viens le lire et n'autorise l'envoi que si 10 mn se sont écoulées.

si tu trouve le système du cookie pas suffisamment sûr tu peux utiliser les variables de session php
0
jeangilles Messages postés 816 Date d'inscription   Statut Membre Dernière intervention   186
 
Ben sinon en passant par du javascript
tu mets un bouton à disabled et en bout de 10 minutes, le bouton se remet à enable avec du javascript, et en cliquant dessus, ca envoit le mail
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
Oui ok mais il voulait en php
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jeangilles Messages postés 816 Date d'inscription   Statut Membre Dernière intervention   186
 
Non il a demandé un script à insérer dans une page PHP, il a jamais spécifié que c'était obligatoirement en php ^^
0
Pikachøù Messages postés 9 Date d'inscription   Statut Membre Dernière intervention  
 
Je croi avoir trouver un autre solution mais il me faudrai quelqu'un qui sache m'integrer

se script :

<?php
if(!empty($_POST['captcha']))
{
if(isset($_SESSION['captcha']) && $_POST['captcha'] == $_SESSION['captcha'])
echo 'Le captcha est bon.';
else
echo 'La captcha n\'est pas bon.';

session_destroy(); // Pour eviter les multiposts.
}
else
echo 'Il faut remplir tout les champs.';
?>

dans se script :

<?php
$msg_erreur = "<div class=\"reponse\">Attention, les champs marqués d'une * sont obligatoires.<br/></div>";

$msg_ok = "<div class=\"reponse\">Votre message a bien été envoyé et sera traité le plus rapidement possible.</div>";

$message = $msg_erreur;

define('MAIL_DESTINATAIRE','...@...');

define('MAIL_SUJET','Message de ...');


// vérification des champs

if (empty($_POST['email_expediteur']))

$message .= "<div class=\"reponse\">Veuillez indiquez votre adresse e-mail.<br/></div>";

if (empty($_POST['message']))

$message .= "<div class=\"reponse\">Veuillze indiquez votre message.</div>";


// si un champ est vide, on affiche le message d'erreur

if (strlen($message) > strlen($msg_erreur)) {


echo $message;
// sinon c'est ok

} else {



foreach($_POST as $index => $valeur) {

$$index = stripslashes(trim($valeur));

}

//Préparation de l'entête du mail:

$mail_entete = "MIME-Version: 1.0\r\n";

$mail_entete .= "From: {$_POST['nom']} "

."<{$_POST['email']}>\r\n";

$mail_entete .= 'Reply-To: '.$_POST['email']."\r\n";

$mail_entete .= 'Content-Type: text/plain; charset="iso-8859-15"';

$mail_entete .= "\r\nContent-Transfer-Encoding: 8bit\r\n";

$mail_entete .= 'X-MailerPHP/' . phpversion()."\r\n";



// préparation du corps du mail

$mail_corps .= "E-MAIL : $email_expediteur / ";

$mail_corps .= "TITRE : $titre / ";

$mail_corps .= "MESSAGE : $message";



// envoi du mail

if (mail(MAIL_DESTINATAIRE,MAIL_SUJET,$mail_corps,$mail_entete)) {



//Le mail est bien expédié

echo $msg_ok;

} else {



//Le mail n'a pas été expédié

echo 'Une erreur est survenue lors de l\'envoi du formulaire';

}



}
?>

S'il vous plait :)
0