IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Générer un identifiant unique [PHP 5.3]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 256
    Par défaut Générer un identifiant unique
    bonjour,

    je cherche à mettre en place une focntion qui génère un ID de cookie unique pour mon visiteur, c'est pour mon module de statistiques.

    Etant donnée que le visiteur ne se loggue pas à mon site (pas d'identifiant utilisateur en bdd), j'ai pensé résoudre mon problème à partir de la fonctions mktime() qui me génère un id unique.

    Est ce que c'est fiable (risque de doublon?) si non avez vous une autre idée

    merci

  2. #2
    Membre Expert Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Par défaut
    Hmm mktime() te retourne le temps écoulé donc si 2 personnes se logguent exactement au même moment je dirais que ça doit être possible d'avoir le même timestamp pour les 2 clients. Surtout que c'est en secondes et pas en ms.
    J'imagine que tu gères ça dans une BDD donc le plus simple serait un compteur rudimentaire. Un simple id en auto-incrément. Si le client existe tu mets à jour son enregistrement, s'il existe pas tu l'ajoutes.
    Evidemment s'il efface ces cookies les résultats sont faussés mais t'as pas trop le choix.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 256
    Par défaut
    Oui j'ai noté cet inconvénient d'utiliser la fonction mktime.

    Je ne souhaite pas utiliser de bdd, de plus ça ne réglera pas mon problème.

    merci

  4. #4
    Membre Expert Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Par défaut
    Tu les stockes où tes stats ?
    Le principal est d'avoir un nombre de 'clients' que t'incrémentes à chaque fois, t'as pas dû comprendre (ou c'est moi ) car il me semble que ça répond tout à fait à ta demande.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    256
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 256
    Par défaut
    Lorsqu'un visiteur se pointe, je lui créer un identifiant unique que je lui stocke dans son navigateur (cookie). Ensuite j'insere en bdd cet identifiant, ainsi que la page qu'il a visité etc.
    Comme ça j'identifie un visiteur par son ID cookie, ce qui me permet de savoir s'il est déjà revenu ou pas et quelles pages il a visité.


  6. #6
    Membre Expert Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 023
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 023
    Par défaut
    Ok, donc c'est ce que jte disais
    Dans ta BDD tu fais un champ id en auto-increment (ou tu peux aussi gérer ça à la main dans un fichier).

    Ensuite quand un client se connecte, tu vérifies si le cookie existe, s'il existe pas :
    - tu fais un nouvel insert dans ta BDD, tu récupère l'id généré et tu le stockes dans son cookie
    si le cookie existe :
    - tu récupères l'id que t'as stocké dans le cookie et tu peux modifier son enregistrement dans la BDD

    Là t'es sûr d'avoir un identifiant unique car ce sera : 1, 2, 3, etc.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Requête : générer un identifiant unique à la volée
    Par fafa63 dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 09/07/2014, 15h48
  2. Générer un identifiant unique sur une requete "update"
    Par programaniac dans le forum Langage SQL
    Réponses: 6
    Dernier message: 03/06/2009, 11h00
  3. Générer un identifiant relatif > l'entité faible en prati
    Par vmolines dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 19/08/2005, 16h59
  4. [DB2] Identifiant unique
    Par kluh dans le forum DB2
    Réponses: 1
    Dernier message: 24/05/2005, 13h20
  5. l'identifiant unique de la dernière ligne insérée
    Par dim_italia dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 23/08/2004, 18h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo