Probleme de Cookies [Résolu]

Signaler
Messages postés
239
Date d'inscription
jeudi 21 juillet 2005
Statut
Membre
Dernière intervention
1 juillet 2007
-
Messages postés
954
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
11 novembre 2008
-
Bonjour,
Ecouter j'avouerai que la j'en ai vraiment plus que marre ! depuis toute la journée jy suis ! c 'est affolant mais les cookies et moi ! on est vraiment des ennemis acharner !!!

je vous explique ! et dieu merci celui qui pourra me venir en aide...
jai un formulaire en methode post qui apres remplissage de celui ci ! envoi une requete direct sur la page web

ce qui ce passe c que je voudrai eviter au visiteurs d'empecher de revenir sur ce formulaire une seconde fois au bout de 3600 secondes. equivalent a une heure...
voici mon code :)
------------

--------
Ca marche pas serieux je sais pas quoi faire
quelquun peut il maider ? merci

5 réponses

Messages postés
954
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
11 novembre 2008
2
Salut,
j' ai trouvé ;-)
ça venait pas de la redirection mais de plusieur facteur !!!
1) un petit problème dans tes if
2) un problème dans le timming de ton cookie !!!
Pour mettre l'expiration dans 1H on fait time()+3600 !!!!

Voilà ton code :

<?php include('config.php');

if(!empty($_POST['submit']))// On vérifit si des données type POST ont été émises
{
    $titre  = addslashes(htmlentities(trim($_POST['titre'])));
    $id_jeux = $_POST['id_jeux'];
    $auteur = $_POST['auteur'];
    $description  = addslashes(htmlentities(trim($_POST['message'])));
    $date = date('d/m/Y H:i:s');
    $news = 0;

    if (!isset($_COOKIE['Tempo']))// On vérifit qu' il n' a pas de cookie
    {
        if(empty($_POST['titre']) || empty($_POST['message']))// On vérifie avec empty voir si les champs sont vide
        {
            echo 'Merci de remplir tous les champs'
            ,$titre
            ,$description;

        } else {// Tout les champs sont ok et il n'y a pas de cookie
            // Création de la requette sql
            $requete = "INSERT INTO news(titre, id_jeux, auteur, description, date, news)
             VALUES ('$titre', '$id_jeux', '$auteur', '$description', '$date', '$news')";

            // Envoie de la requette sql
            $result = mysql_query($requete);

            if(!$result){// Problème avec la base sql
                echo 'Erreur Innatendu.
';
               
            } else  {// Tout est ok, enregistrement éffectué
                setcookie('Tempo', time()+3600, time()+3600);
               
                echo 'Votre News a bien été enregistré !';
            }
        }
    } else {
        $time = $_COOKIE['Tempo'] - time();
        $type_time = 'secs';
        if($time > 60){
            $time = $time / 60;
            $type_time = 'mins';
        }
        echo 'Vous ne pouvez pas envoyer une nouvelle news avant : ',$time,' ',$type_time;
    }
}
?>

@+

Immortal-PC,
téléchargements,astuces ,entre-aide informatique , conseils pour vos problèmes d'ordi. 
<!--StartFragment -->Grâce à Immortal-PC votre ordinateur passera les âges.
Messages postés
954
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
11 novembre 2008
2
Salut,
pour utiliser les cookie il faut faire comme ça :
<?php
$_COOKIE['Nom_du_Cookie'];// Lire un cookie

// Ecriture dans un cookie du passe
$duree = 365*24*60*60; // 1 an en secondes !
setcookie('Nom_du_Cookie', 'Données', time()+$duree);// Création du cookie
header('Location: '.$_SERVER['PHP_SELF']); // Redirection obligatoire
?>

@+

Immortal-PC,
téléchargements,astuces ,entre-aide informatique , conseils pour vos problèmes d'ordi. 
<!--StartFragment -->Grâce à Immortal-PC votre ordinateur passera les âges.
Messages postés
239
Date d'inscription
jeudi 21 juillet 2005
Statut
Membre
Dernière intervention
1 juillet 2007

donc il me manque ceci : header('Location: '.$_SERVER['PHP_SELF']);
dans mon code.... 
le code ce trouve a cette adresse : http://rech151.Free.fr/code/code.txt
(merci encore pour ta reponse en attente d'une nouvelle reponse )
Messages postés
239
Date d'inscription
jeudi 21 juillet 2005
Statut
Membre
Dernière intervention
1 juillet 2007

té genial et c pas la premiere fois que tu maides serieux, encore merci... c super :)
bon fin de week end a toi ! je vais regarder la source en detail et je vais faire mes test ;)
Messages postés
954
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
11 novembre 2008
2
Salut,
de rien ;-)
Toi aussi bon Week end ;-)

@+

Immortal-PC,
téléchargements,astuces ,entre-aide informatique , conseils pour vos problèmes d'ordi. 
<!--StartFragment -->Grâce à Immortal-PC votre ordinateur passera les âges.