[cookies] identification, module

Signaler
Messages postés
95
Date d'inscription
mercredi 6 juillet 2005
Statut
Membre
Dernière intervention
23 août 2010
-
Messages postés
95
Date d'inscription
mercredi 6 juillet 2005
Statut
Membre
Dernière intervention
23 août 2010
-
Bonjour a tous, j'aimerai créer un systeme de pseudo identification a base de cookies, en fait, dés que on rentre sur le site, une petite fenétre saffiche demandant votre pseudo, celui-ci est enregistré dans un cookie, et un autre module sur le page indique toutes les personnes connecté, (et bien sur on a pas a rerentré le pseudo vu qu'il est sauvegardé dans un cookie) je ne sais pas trop comment mi prendre vu que je début un peu en php, je sais que c'est réalisable, donc je vous demande votre aide, merci d'avance.

Le must sa serai qu'il existe déjà une source qui rempliré cette fonction, mais éllas je ne lé pas trouvern, ou alors j'ai mal cherché ....

Merci d'avance  ; )

Ps: ptétre que je ne suis pas trés clair, j'ai fait ce post un peu vite je vou lavou.

10 réponses

Messages postés
1980
Date d'inscription
dimanche 20 février 2005
Statut
Membre
Dernière intervention
24 septembre 2012
5
Hello, alors comme ça tu nous lavou ? mince...

Heu sinon tape "espace membre cookie" dans google, tu devrais trouver.

à+
Messages postés
95
Date d'inscription
mercredi 6 juillet 2005
Statut
Membre
Dernière intervention
23 août 2010

ok ok, je regarderai sa ce soir, mais je pance que avec google je trouverai des espace membre avec pass ... non ?



Voilà un exemple :

http://theclantoc.roxorgamers.com/

, mais j'aimerai rajouter un petit module où serai inscrit le pseudo de toutes
les personnes actuellement connecté au site (sur l'index), l'utilisation d'une
base de donné sera peut-être nécessaires ....

Merci pour ta réponce.
Messages postés
131
Date d'inscription
mardi 21 septembre 2004
Statut
Membre
Dernière intervention
23 septembre 2011

Bonjour,
Il serait certainement plus intéressant pour toi d'utiliser des variables de session:
- déjà au niveau sécurité, car le cookie est un simple fichier texte qui peut être lu sans aucun problème dans la machine sur lequel il a été écrit.
- pour des raisons d'accessibilité, car il existe quelques cas (certes peu nombreux), où l'utilisateur refuse le javascript.
Tu ne pourras par contre pas conserver ces infos après la fermeture de la connexion.
Sinon c'est le cas le plus fréquement utilisé, et si tu souhaite ne pas mettre de password (donc pas de vérif, donc pas besoin de base), la modification des scripts disponibles sur le net ne sera pas très compliquée.(Si j'ai bien compris tu souhaites uniquement identifier l'utilisateur, sans contrôle d'enregistrement préalable).
... et pour afficher la liste des connectés, il te faudra effectivement une BDD (sinon comment rendre disponible à tous les informations ?)
Messages postés
95
Date d'inscription
mercredi 6 juillet 2005
Statut
Membre
Dernière intervention
23 août 2010

Salut Zatt, oui tu a compri, c'est "simple" aucune vérification de pass ni rien juste le pseudo ...

Aprés je suis entrain de réfléchir a comment je pourai faire pour fait le dernier module, là ou le pseudo de tout les ga connecté s'affiche ... mais javou que c'est pas si simple que sa

"déjà au niveau sécurité," ouai, sa c'est pas trop trop important encore, il faudra juste vérifier le contenu du cookie (ou limiter la taille du pseudo par exemple ...)

"Tu ne pourras par contre pas conserver ces infos" bin sa sert a rien alors ... lol

"la modification des scripts disponibles sur le net"  a oui, mais on pourai ce servir de quels script ?? car là, je voi pas (dsl)

Sinon, merci beaucoup et A+ surment

Ps: je sais ce q'est un cookie ^^
Messages postés
95
Date d'inscription
mercredi 6 juillet 2005
Statut
Membre
Dernière intervention
23 août 2010

Voilà mon premier G :
<hr size="2" width="100%" /><?php
$expire = time() + 365*24*3600*2; // duré de vie de 2 ans, mdrr

if (isset($_POST['pseudo']))
{
    $pseudo = $_POST['pseudo'];
    setcookie('pseudo', $pseudo, $expire); // On écrit un cookie

}
else // La variable n'existe pas encore
{
    $pseudo = ""; // On crée une variable $pseudo vide
    }
?>
<html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
            <meta name="GENERATOR" content="Microsoft FrontPage 4.0">
            <meta name="ProgId" content="FrontPage.Editor.Document">
            <title>Pseudo [En test]</title>
        </head>
   
   
<form action="pseudo.php" method="post" name="form">

</td>
</form>
   
</html>
<hr size="2" width="100%" />La lecture du cookie ne sera pas dure, mais il me manque un "truc" pour passer de ce script a la BBD je sauré faire, mais aprés il faudrai que je fasse un "truc" qui garde que les pseudo actuelement connecter, trouver une astuce pour y arriver en tout cas ...

aprés demain je posterai la suite que j'aurais fait demain
Messages postés
131
Date d'inscription
mardi 21 septembre 2004
Statut
Membre
Dernière intervention
23 septembre 2011

dsl n'ai nullement cherché à te blesser, c'est juste que la solution par variables de sessions me semblait plus adaptée, voire plus simple  à mettre en oeuvre.
Si tu veux garder des traces des passages, une table bdd (pseudo, datetime ,... ip) sera suffisante, mais l'utilisateur devra s'identifier à chaque connection; sinon si c'est juste pour afficher "bonjour toto" après un premier login, effectivement, le cookie est mieux (jusqu'au prochain nettoyage des traces de nav).
Pour afficher la liste des utilisateurs connectés, tu n'as que l'embaras du choix:
http://www.google.fr/search?hl=fr&q=php+afficher+connect%C3%A9s&meta=
Messages postés
95
Date d'inscription
mercredi 6 juillet 2005
Statut
Membre
Dernière intervention
23 août 2010

Ne tinkiéte pas Zatt il en fau plus pour me blésser, je plésantais ^^

Et oui, justement j'ai retenu la solution des cookies, car j'ai pas envi que tout les visiteur sidentife a chaqu'une de leur visite, a la fin sa deviendrai lourd pour tout le monde je pance ...

Je regarderai sa demain surment, et merci pour ces info ;-)

Ps: désolé pour les fautes, je voi pas mon clavier
Messages postés
95
Date d'inscription
mercredi 6 juillet 2005
Statut
Membre
Dernière intervention
23 août 2010

Salut, j'ai bien réfléchi et voilà :

Structure de la talbe:

CREATE TABLE `pseudo` (
`pseudo_a` VARCHAR( 18 ) NOT NULL ,
`timestamp2` INT( 11 ) NOT NULL
) TYPE = MYISAM ;

Tout le principe de fonctionement est basé sur cette table, la valeur du cookie est enregistré dans le chan "Pseudo" et l'heure a laquelle il a été inscri dans le chan timestamp2

Aprés, le script, php devra calculer le timestamp qu'il été il y a 5 minutes et éffasser tout les pseudo dont le timestamp2 est inférieur a celui calculé.

Voilà j'ai eu une cetet idée hier soir, meintenent, il reste plus que a réaliser le script, et là, bin je sens que sa va prendre unpeu plus de temp ...

est-ce que mon idée est réalisable et y a t-il plus simple ??
Messages postés
131
Date d'inscription
mardi 21 septembre 2004
Statut
Membre
Dernière intervention
23 septembre 2011

connexion -> écriture du cookie -> enregistrement pseudo dans une table BDD
bouton déconnexion -> suppression dans la BDD

pb: solution non fiable si l'utilisateur quitte sans activer le script de déconnexion.

Tu peux effectivement inscrire le timestamp de connexion, et effacer l'enregistrement après une certaine durée (fixée arbitrairement); la gestion à partir du timestamp de connexion semble peu réaliste (pourquoi effacer un utilisateur qui s'est connecté depuis plus de 5mn), et un calcul sur la durée d'inactivité imposerait un nombre de requêtes importantes sur la base.
Peut être que ceci pourrait t'être utile:
http://www.actulab.com/php--compteur-instantane.php?destinataire=mathias
Messages postés
95
Date d'inscription
mercredi 6 juillet 2005
Statut
Membre
Dernière intervention
23 août 2010

Il est vrai que ta solution est "bien" mais trop
pointu pour moi, je commence en PHP et ce que j'ai envie de réaliser est pas très
très compliqué, par contre, je te l'avoue, il est vrai que ma méthode est peu catholique
et pas précise du tout (lol) mais dans l'idée c'étais bien quand même, non ?





<!--[if !supportEmptyParas]-->





Après
il faudra peaufiner un peu, et là je penserai aux améliorations possible, mais
pour commencer, tu m’excusera, je mais la barre pas très haut ^^.