Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 21/08/2008, à 19:35

Maxouille

[Résolu] php ou html+cocher

Bonjour,
Je voudrais savoir si il étais possible de cocher de facon permanante des cases sur une page
JE voudrais en faite que l'on puisse cocher une case a coté d'un lien une fois qu'on a vu se qu'on avais a voir sur ce lien.

Merci de votre aide

Hors ligne

#2 Le 21/08/2008, à 23:06

hugo81

Re : [Résolu] php ou html+cocher

Possible via :
1-un cookie sur le navigateur du client
2-une base de données sur le serveur (identifier l'utilisateur)
3-utiliser l'historique du navigateur (en fait je sais pas si c'est faisable)

Quelle est la durée de rétention de cette information ?

Hors ligne

#3 Le 22/08/2008, à 05:14

Maxouille

Re : [Résolu] php ou html+cocher

Je prendrais bien la solution une. Tu peux m'en dire plus ?

Ba faut que ça dure le plus longtemps possible big_smile

En fait j'ai un petit problème dans ma tête pour la réalisation.

Moi je vois ça : on a par exemple lien 1 , 2 ,3 .
A coté un bouton ou une case a cliquer/cocher. Ceci a pour action un autre fichier qui envoi le cookie 1 pour le lien 1, le cookie 2 pour ... etc. Et ensuite pour la page ou ya les 3 lien , on met a coté de chaque lien, SI le cookie existe, alors on affiche le texte ''déjà vu''

Voila moi je verrai ça comme ça , seulment ça risque d'être très long vu tout les liens que j'ai (plus de 300), et ça m'oblige a faire toutes les pages en double ( les pages qui envoi les cookies, donc une page par cookie).

Aurais-tu une meilleur solution ? merci

Hors ligne

#4 Le 22/08/2008, à 17:27

Nécropotame

Re : [Résolu] php ou html+cocher

Comme l'a dit hugo81, tu à deux solutions : cookie ou compte utilisateur.

Pour les cookies, il faudrait stocker une suite de 0 ou de 1 selon que ton lien soit vus ou non. Tu l'explode, et en fonction de leur ordre, tu retrouve si c'est le lien 1,2 ou 3. Pour plus de sécurité, tu peut aussi faire deux liste : une avec la clé, et une autre avec la valeur. En suite, tu récupère la clé 3 avec la valeur 3 et du à ton couple clé/valeur.

Hors ligne

#5 Le 22/08/2008, à 17:34

Maxouille

Re : [Résolu] php ou html+cocher

Tu peux développer un peu s'il te plait? je ne comprends pas trop comment utiliser l'explod, j'envoi ou et de quelle marnière  les cookies la ?

Hors ligne

#6 Le 22/08/2008, à 22:37

hugo81

Re : [Résolu] php ou html+cocher

Pour que ça dure longtemps, il vaut peut-être mieux utiliser une base de données sur le serveur (ou des fichiers) avec identifiant de l'utilisateur (il faudra une espèce de login) et enregistrer les couples (identifiant du lien/coché ou pas). Le défaut, c'est lorsque l'utilisateur ne sait plus s'identifier : il faudra faire du ménage de temps en temps...

Pour le cookie, en gros, c'est pareil, mais c'est le navigateur (acceptant les cookies) qui stocke l'information (sachant que l'utilisateur peut les flinguer...).

Un cookie à un nom et une valeur de type chaîne de caractères (là aussi, c'est en gros). On peut faire :

- exemple 1 : Nom=COOKIE_DU_SITE_TOTO Valeur=011001, ce qui veut dire que la position x dans la valeur correspond au lien numéro x, et si à la position x il y a 0, c'est que l'utilisateur n'a pas coché, si cest 1, il a coché;

- exemple 2 : Nom=COOKIE_DU_SITE_TOTO Valeur=L2-L3-L6, pour dire qu'il a coché le 2éme, le 3éme et le 6éme pour dire la même chose qu'à l'exemple 1.

- ...

Hors ligne

#7 Le 23/08/2008, à 07:23

Maxouille

Re : [Résolu] php ou html+cocher

Non j'insiste pour faire ça avec des cookies.

D'accord je comprends un peu mieu le principe avec les cookies, mais je toujours pas comment faire ça dans la pratique.

Hors ligne

#8 Le 23/08/2008, à 09:03

rniamo

Re : [Résolu] php ou html+cocher

pourquoi pas avec des sessions ? tu peux mettre des variable du type $_SESSION["caseNumero1"]="tic";

(et c'est gérer coté serveur.)


< Quelques un des mes programmes  | Cuisine Facile (pour les gourmands) | Fast MVC for PHP >
        \   ^__^
         \  (o o)\_______
            (___)\            )\

Hors ligne

#9 Le 23/08/2008, à 09:42

hugo81

Re : [Résolu] php ou html+cocher

Si c'est du PHP, la valeur du cookie se récupère via le tableau $_COOKIE qui n'a pas à être déclaré :
print_r( $_COOKIE["nom_du_cookie"]);

Les cookies ont une durée de vie qui est imposée par le serveur mais le navigateur (l'utilisateur) a sa politique de vie privée (donnée "expire dans" du cookie) et aussi une donnée "domaine ou  serveur" (là, faut vérifier si c'est serveur ou domaine).

Le navigateur envoie les cookies au serveur si le domaine correspond. Il faut donc tester la valeur du cookie et s'il n'existe pas (pas de valeur ou valeur nulle, je sais plus), le créer (setcookie() http://fr2.php.net/setcookie)...

Hors ligne

#10 Le 23/08/2008, à 11:35

Maxouille

Re : [Résolu] php ou html+cocher

Mille excuses.
Après recherche je me suis rendu compte que les sessions n'étaient pas se que je pensait.
Du coup je vais utiliser cette méthode. Mais je ne voit toujours pas comment faire :s

bon je propose une solution, mais qui est très longue :s
Pour chaque case, le formulaire renvoi faire un fichier checkbox.php, dans ce fichier j'ai un if case1="on" (donc cochée) on voit un cookie. et sur la premiere page on met tout au début: si la case est sur "on" (donc on cherche sur phpmyadmin) alors on afficher un petit VU a coté du lien

Cette méthode doit marchée mais est très contrainiante.

Vous proposez mieux ?

Hors ligne

#11 Le 23/08/2008, à 14:21

Maxouille

Re : [Résolu] php ou html+cocher

Bon ba cette méthode marche bien smile
Je viens juste vous demander si quelque chose de plus rapide existe pour ça:

if ($_POST['s1e1'] == "on")
{
setcookie('s1e1', 'on', (time() + 360000000));
}
if ($_POST['s1e1'] == "")
{
setcookie('s1e1');
}

if ($_POST['s1e2'] == "on")
{
setcookie('s1e2', 'on', (time() + 360000000));
}
 if ($_POST['s1e2'] == "")
{
setcookie('s1e2');
}

if ($_POST['s1e3'] == "on")
{
setcookie('s1e3', 'on', (time() + 360000000));
}
if ($_POST['s1e3'] == "")
{
setcookie('s1e3');
}

ou encore ça:

$_COOKIE['s1e1']=="off";
$_COOKIE['s1e2']=="off";
$_COOKIE['s1e3']=="off";
$_COOKIE['s1e4']=="off";

Hors ligne

#12 Le 23/08/2008, à 17:03

Maxouille

Re : [Résolu] php ou html+cocher

http://www.siteduzero.com/forum-83-312594-2890995.html#r2890995

Hors ligne