Probleme de Cookies

Résolu
milkasoprano Messages postés 239 Date d'inscription jeudi 21 juillet 2005 Statut Membre Dernière intervention 1 juillet 2007 - 18 août 2006 à 22:43
ImmortalPC Messages postés 954 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 11 novembre 2008 - 19 août 2006 à 22:31
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

ImmortalPC Messages postés 954 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 11 novembre 2008 2
19 août 2006 à 13:07
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.
3
ImmortalPC Messages postés 954 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 11 novembre 2008 2
18 août 2006 à 23:06
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.
0
milkasoprano Messages postés 239 Date d'inscription jeudi 21 juillet 2005 Statut Membre Dernière intervention 1 juillet 2007
19 août 2006 à 00:31
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 )
0
milkasoprano Messages postés 239 Date d'inscription jeudi 21 juillet 2005 Statut Membre Dernière intervention 1 juillet 2007
19 août 2006 à 17:32
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 ;)
0

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

Posez votre question
ImmortalPC Messages postés 954 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 11 novembre 2008 2
19 août 2006 à 22:31
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.
0
Rejoignez-nous