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 :

Gestion d'une suite de variables


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné
    Homme Profil pro
    Webmaster
    Inscrit en
    Janvier 2007
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Janvier 2007
    Messages : 489
    Par défaut Gestion d'une suite de variables
    Bonjour,

    Je mets en place une fonction permettant à mes utilisateurs de visualiser les x derniers articles visités.
    Il me faut ces données en base.

    Je pense que le plus simple est de de faire une structure basique :
    ID CLIENT | IDs ARTICLES
    Dans ma colonne IDs ARTICLES avoir une chaine de type :
    #ID1#ID2#ID3#...

    1/ Qu'en pensez vous ?

    2/ Je pense limiter cette série aux 10 derniers ID articles visités :

    substr_count me permettra donc de savoir combien de # je dispose, sachant qu'il me servent de délimiteur, il faudrait donc que je supprime ce qui "dépasse" du 11eme #
    Je ne dois pas être réveillé ce matin mais je ne vois pas comment faire...

    Peut être que mon système est aussi bancale à la base ?

    Merci à vous.
    Bonne journée

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    une solution parmi d'autres ...

    table T_CLIENT_ARTICLES :
    ID_client | ListIDs_articles
    Avec dans la colonne ListIDs_articles une chaine de type : ID1,ID2,ID3

    Intérêt (des virgules) ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    // on récupère la chaine
    	// [......]
    	$ListIDs_articles = $row['ListIDs_articles'];
     
    // on peut directement faire la requête :
    	$query = "SELECT * FROM T_ARTICLES WHERE ID_article IN (".$ListIDs_articles.");";
     
    // on récupère aussi facilement l'array des IDs
    	$ListIDs_art_array = explode(',', $ListIDs_articles);

  3. #3
    Membre chevronné
    Homme Profil pro
    Webmaster
    Inscrit en
    Janvier 2007
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Janvier 2007
    Messages : 489
    Par défaut
    Merci à toi Jérôme.

    Limites tu le nombre d'ID aussi ? je scotch sur :

    2/ Je pense limiter cette série aux 10 derniers ID articles visités :
    substr_count me permettra donc de savoir combien de # je dispose, sachant qu'il me servent de délimiteur, il faudrait donc que je supprime ce qui "dépasse" du 11eme #
    Je ne dois pas être réveillé ce matin mais je ne vois pas comment faire...

  4. #4
    Membre Expert Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2003
    Messages : 786
    Par défaut
    Bonjour,

    une autre solution qui me vient,

    tu rajoutes un champs last_visit dans ta table article ( que tu mets à jour à chaque visite)

    Et pour récupérer les X dernier, tu fais ton select order par ce champ avec une limit a X.

  5. #5
    Invité
    Invité(e)
    Par défaut
    @Bebel : sans vouloir te vexer, le pense que tu es hors-sujet.
    Ce que tu proposes c'est "la last visit" de l'article (sans relation avec le client)
    Ici, c'est "les last visit" du client

  6. #6
    Membre Expert Avatar de Bebel
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    786
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2003
    Messages : 786
    Par défaut
    Citation Envoyé par jreaux62 Voir le message
    @Bebel : sans vouloir te vexer, le pense que tu es hors-sujet.
    Ce que tu proposes c'est "la last visit" de l'article (sans relation avec le client)
    Ici, c'est "les last visit" du client
    en effet,
    désolé je vais avoir besoin de vacances

    Bon pour revenir dans le sujet pour avoir les 10 derniers, tu peux faire un explode sur ta liste, ajouté le nouveau en début et garder uniquement le 10 premier.

    Même pourquoi pas supprimer l'id s'il existe déjà avant de le remettre au début, comme ça l'article se retrouve en 1ere position.

  7. #7
    Membre chevronné
    Homme Profil pro
    Webmaster
    Inscrit en
    Janvier 2007
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Janvier 2007
    Messages : 489
    Par défaut
    Merci Bebel.

    En fait j'ai une "grosse" base clients / articles.

    tu rajoutes un champs last_visit dans ta table article ( que tu mets à jour à chaque visite)
    Je peux avoir +500 visites / jour / articles

    Il me semblait donc raisonnable de créer une table clientID | IDs

  8. #8
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Gaetan_ Voir le message
    2/ Je pense limiter cette série aux 10 derniers ID articles visités
    Dans le principe :
    0/ l'utilisateur visite un article -> on veux stocker l'ID_article dans la liste ListIDs_articles
    1/ on vérifie que cet id n'y est pas déjà
    2/ sinon, on l'ajoute AU DEBUT de la liste -> $ListIDs_articles = $ID_article.','.$ListIDs_articles;
    3/ si la liste a plus de 10 éléments ("IDxx,"), on coupe "ce qui dépasse" à la fin

    On peut même envisager d'enregistrer la date de la visite pour chaque article :
    table T_CLIENT_ARTICLES :
    ID_client | ListIDs_articles | ListDate_visite
    -> colonne ListIDs_articles : ID3,ID2,ID1
    -> colonne ListDate_visite : time3,time2,time1

  9. #9
    Membre chevronné
    Homme Profil pro
    Webmaster
    Inscrit en
    Janvier 2007
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Janvier 2007
    Messages : 489
    Par défaut
    hehe oui mais c'est justement ca :

    Citation Envoyé par jreaux62 Voir le message
    Dans le principe :
    3/ si la liste a plus de 10 éléments ("IDxx,"), on coupe "ce qui dépasse" à la fin
    Qui me pose problème

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

Discussions similaires

  1. [AppleScript] Initialiser rapidement une suite de variables
    Par ekami dans le forum AppleScript
    Réponses: 2
    Dernier message: 01/05/2013, 15h20
  2. Projet de gestion d'une agence de voyage ( suite )
    Par charliemoun dans le forum Débuter
    Réponses: 2
    Dernier message: 30/03/2011, 22h42
  3. [Associé] Dev d'une solution de gestion de flotte (suite)
    Par opartpro dans le forum Autres
    Réponses: 0
    Dernier message: 05/03/2011, 12h58
  4. Variable pour une suite de contrôle
    Par sakia dans le forum VBA Access
    Réponses: 2
    Dernier message: 26/05/2008, 11h56
  5. Gestion d'une variable TDateTime
    Par sergedarkmaul dans le forum Langage
    Réponses: 10
    Dernier message: 29/04/2008, 15h54

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