Cookies [Résolu]

Signaler
Messages postés
73
Date d'inscription
lundi 20 octobre 2003
Statut
Membre
Dernière intervention
12 juillet 2007
-
Messages postés
954
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
11 novembre 2008
-
Bonjour,

Je voudrais limiter l'accès à une page par un cookie. Il faut que si
cette page a étée déjà vue plus d'une fois aujourd'hui, le visiteur
soit redirigé sur une autre page. Mais je n'ai aucune idée de comment
on utilise les cookies!



Merci de me venir en aide!

17 réponses

Messages postés
954
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
11 novembre 2008
2
Oki je vais tout faire....

<?php

if(IsSet($_COOKIE['Toto'])){

echo 'pas le droit d\'accès ici';

exit;

}else{

// Cookie

$duree = 365*24*60*60; // 1 an en secondes !

setcookie('Toto',time()+$duree);

Header('user: '.$_SERVER['REQUEST_URI']);

}

?>


@+
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
J'ai oublié de préciser qu'il faut remplacer tot par le nom de la page !!!

Et qu'il faut mettre ce code en ghaut de la page !!!!



@+
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 un cookie c'est :

// Cookie

$duree = 365*24*60*60; // 1 an en secondes !

setcookie('ABCtest.net;'.$_GET['ID'],get_ip(),time()+$duree);

Header('user: '.$_SERVER['REQUEST_URI']);



Après une redirection :

header('Location: monfichier.php');



@+
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
73
Date d'inscription
lundi 20 octobre 2003
Statut
Membre
Dernière intervention
12 juillet 2007
6
Salut,

merci de ta réponse.



Mais moi je veux un jour, je n'ai pas bien compris pourquoi tu as mis un an.



Et puis le code php, je le met où?

Et si je le met, je ne veux pas qu'il ouvre mon fichier.php si c'est la première fois de la journée que l'on voit cette page.



Merci d'avance.
Messages postés
954
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
11 novembre 2008
2
Pour des jours c'est co* !

Tu mets en seconde 1 jour !!!

Il y a 24H dans un Jour

1H = 60minutes

1minute = 60secs

A toi de calculer !!

Tu mets ça en haut de t'as page !!

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
73
Date d'inscription
lundi 20 octobre 2003
Statut
Membre
Dernière intervention
12 juillet 2007
6
problème !!!


Fatal error: Call to undefined function: get_ip() in /home/kavmedia/public_html/smsconnect.php on line 205
Messages postés
2350
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
18 avril 2015
3
get_ip() n'est pas une fonction pré-défini par PHP. C'est à toi de la construire !
Messages postés
954
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
11 novembre 2008
2
Modif un peu le code !!!!

setcookie('données de ton cookie ICI!!!!!!',time()+$duree);

@+

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
2350
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
18 avril 2015
3
Le mieux :



http://fr.php.net/setcookie



Comme ca, y'a moins de problème :)
Oubli le dernier MSG, j'ai enlevé "ip" mais par contre,



là ça me redirige bien sur monfichier.php mais on nombre illimité de
fois, alors que j'ai dit que je voulais qu'il limite l'accès à une fois
par jour. Je suppose qu'il faut faire un require sur le cookie, mais
COMMENT??
Messages postés
954
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
11 novembre 2008
2
Ok j'ai compris le focntionnement de ton site tu ne mais pas la redirection :

header('Location: monfichier.php');

@+

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
73
Date d'inscription
lundi 20 octobre 2003
Statut
Membre
Dernière intervention
12 juillet 2007
6
En ne la mettant pas, j'ai actualisé la page et même résultat je peux la voir!
Messages postés
2350
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
18 avril 2015
3
"Je suppose qu'il faut faire un require sur le cookie" T'as rien lu du
lien que je t'ai mis ? Parce que si c'est le cas, je peux comprendre
pourquoi tu n'as rien compris !



"Une fois que le cookie a été placé, il est accessible dans les variables globales
$_COOKIE ou bien
<var>$HTTP_COOKIE_VARS</var> arrays. Notez que les
autoglobales
telles que <var>$_COOKIE</var> sont disponibles en PHP depuis
la version 4.1.0.
<var>$HTTP_COOKIE_VARS</var> existe depuis PHP 3.
Les valeurs de cookies existent aussi dans la variable
$_REQUEST. "



C'EST MARQUE EN GROS !!!



"alors que j'ai dit que je voulais qu'il limite l'accès à une fois par jour." Bah tu regardes dans le lien, c'est marqué :|
Messages postés
73
Date d'inscription
lundi 20 octobre 2003
Statut
Membre
Dernière intervention
12 juillet 2007
6
C'est en le lisant que je l'ai vu justement!

Mais COMMENT ON LE FAIT!!

C'est pas écrit!!!!
C'est bon ça marche!



Merci!
Messages postés
2350
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
18 avril 2015
3
" Mais COMMENT ON LE FAIT!!

C'est pas écrit!!!!" Bah on se sert de sa tête un peu ...



Regarde, je te donne le schéma de ce qui aurait du se produire dans ta tête :



Est ce que le visiteur a un cookie ?

-> Oui : Accès refusé

-> Non : On lui met un cookie pour dire qu'il vient d'aller sur la page







Et ca, tu le transformes en PHP (mais compte pas sur moi pour te donner
ca tout cru), et tu fous ca en haut de chaque page (heureusement que
ImmortalPC te le précise...) et voila !



Y'a quoi de dur la dedand ? Parce que, à part venir pleurnicher pour
dire : "Ouin, il me faut ci, il me faut ca !" "Ouin, ca marche pas,
jveux ca, et ca...", t'as même pas chercher à faire ca toi même.

Quid, plus tard, si je te pose la question de me refaire ce qu'on vient
de te donner, sauras-tu le faire ? (pas la peine de me répondre, je
connais déja la réponse...)



En tout cas, bravo :|
Messages postés
954
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
11 novembre 2008
2
De rien ;-)

Je vais faire un tuto mais oups je fait une recherche dans le site et il y a déjà heu..... beaucoup trop de tuto !!!!

Mais pas grâve, la prochaine fois cherche un peu ;-)

@+


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.