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 :

[Dates] Plusieurs variables dans un champ?


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2004
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 149
    Points : 48
    Points
    48
    Par défaut [Dates] Plusieurs variables dans un champ?
    Bonjour,
    Cela fait plusieurs jours que je me creuse la tête mais je ne trouve pas de solution.

    Je n'arrive pas très bien a expliquer mon problème mais la situation est la suivante :

    Un utilisateur valide une condition sur mon site ,et dans une autres pages se trouve un tableau avec comme champ la date a laquel il a validé et d'autres informations.
    Mais le problème c'est qu'il peut valider plusieurs fois la condition a des moments differents ( ce qui est normale).

    Mon problème est a l'affichage de la varible "date" dans le tableau.
    Quand il valide la condition ,j'enregistre la date dans la variable "date" , mais si il ya plusieurs dates comment faire afin de conserver la première date et de l'affiché et d'affichée la date suivante?
    En sachant que le nombre de validation de la condition est totalement aléatoire ?

    Merci

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 349
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Points : 1 460
    Points
    1 460
    Par défaut
    tu dois avoir dans ta base une table date avec comme champ la date et l'id de l'utilisateur ensuite il te faut afficher toutes les dates de validation concernant cet utilisateur...

    enfin si c'est j'ai bien compris ce que tu demandes

  3. #3
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Points : 5 673
    Points
    5 673
    Par défaut
    Ce que veut dire Boo64 :

    Tu crées un autre table avec 2 champs

    id et date puis lorsqu'un utilisateur valide une date, tu insères la date + son id dans cette table.

    Ensuite lorsque tu veux récupérer toutes les dates validées par cet utilisateur , il te suffit de faire un SELECT dans cette nouvelle table WHERE id = l'id de cet utilisateur.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Février 2004
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 149
    Points : 48
    Points
    48
    Par défaut
    Yesssss carement.
    Merci beacoup j'orais du y pensser.
    Merciii

  5. #5
    Membre régulier Avatar de csbilouze
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    79
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 79
    Points : 107
    Points
    107
    Par défaut
    salut,

    alors moi ce que je ferai, je recupererai avant tout la derniere valeur date si elle existe pour y ajouter la nouvelle date dans la variable grace al opérateur de concaténation.
    Ensuite pour affiché la derniere date tu recuperes la longueur de ta chaine avec la fonction strLen(chaine) et tu renvoies une sous-chaine avec subStr(chaine,entier debut,entier longueur)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    //exemple
     
    //on dit qu une date existe deja donc la recupération a été déja effectué
    $date="10/02/2007";
     
    //on ajoute une deuxieme date
    $date.=" 11/02/2007";
     
    //on recupere la longueur de la chaine
    $longChaine=strLen($date);
     
    //on recupere la sous-chaine
    //dans notre cas la sous chaine que l on desire extraire mesure 10 caracteres
    $debut=$longChaine-10;
    $souChaine=subStr($date,$debut,10);
     
    echo "$souChaine";
    voila j espere que ca t aideras.

    ps: enfin!!!! si j ai bien compris

    ++

  6. #6
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Points : 5 673
    Points
    5 673
    Par défaut
    Ce sera quand même plus facile à gérer avec la solution "table supplémentaire"

  7. #7
    Membre régulier Avatar de csbilouze
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    79
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 79
    Points : 107
    Points
    107
    Par défaut
    Citation Envoyé par N1bus
    Ce sera quand même plus facile à gérer avec la solution "table supplémentaire"
    petite question personnelle.

    question optimisation de la base de données, ne vaut mieux t il pas faire une simple requete UPDATE dans un blob ou a chaque fois creer une entrée dans cette nouvelle table?

  8. #8
    Expert confirmé
    Avatar de N1bus
    Homme Profil pro
    Dev. Web & OpenERP
    Inscrit en
    Janvier 2003
    Messages
    2 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Dev. Web & OpenERP
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 827
    Points : 5 673
    Points
    5 673
    Par défaut
    Par rapport au code que tu as posté, il est clair qu'un UPDATE sera plus simple. (+ clair : ça tient dans 1 ligne de code)

    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = "UPDATE la_table SET la_date = NOW() WHERE id_utilisateur = 'x' ";

    Dans le cas de covin85 , il souhaite conserver toutes les dates validées par les utilisateurs.

  9. #9
    Membre averti
    Profil pro
    Ingénieur en électronique
    Inscrit en
    Septembre 2004
    Messages
    419
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur en électronique

    Informations forums :
    Inscription : Septembre 2004
    Messages : 419
    Points : 333
    Points
    333
    Par défaut
    oui , s'est plus simple , mais prévois aussi de quoi virer tes données inutiles , si tu enregistre chaque conection , la date , et beaucoup de donnée , au bou d'un an , tu auras une grosse base de donnée avec peu d'utile dedant ....

  10. #10
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 349
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 349
    Points : 1 460
    Points
    1 460
    Par défaut
    Citation Envoyé par paterson
    oui , s'est plus simple , mais prévois aussi de quoi virer tes données inutiles , si tu enregistre chaque conection , la date , et beaucoup de donnée , au bou d'un an , tu auras une grosse base de donnée avec peu d'utile dedant ....
    suffit a chaque insert de nourvelle de données de supprimer celle qui sont veille de plus de 2mois par exemple ave cun delete

    Ce que veut dire Boo64 :

    Tu crées un autre table avec 2 champs

    id et date puis lorsqu'un utilisateur valide une date, tu insères la date + son id dans cette table.

    Ensuite lorsque tu veux récupérer toutes les dates validées par cet utilisateur , il te suffit de faire un SELECT dans cette nouvelle table WHERE id = l'id de cet utilisateur.
    tout a fait met bon j'etais vraiment pas claire lool

  11. #11
    Membre régulier Avatar de csbilouze
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    79
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 79
    Points : 107
    Points
    107
    Par défaut
    Citation Envoyé par N1bus
    Dans le cas de covin85 , il souhaite conserver toutes les dates validées par les utilisateurs.
    oui, ju avais compris remarque pour la variable date j ai mis un operateur de concaténation afin de rejouter la date et non la remplacer.

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

Discussions similaires

  1. [MySQL] Plusieurs entrées dans un champ ?
    Par dragon bleu dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 24/10/2005, 19h42
  2. Plusieurs variables dans Dim et Case??
    Par samlepiratepaddy dans le forum Access
    Réponses: 2
    Dernier message: 02/10/2005, 18h04
  3. envoyer plusieurs variables dans l'url?
    Par brgui dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 18/08/2005, 14h18
  4. Réponses: 3
    Dernier message: 27/07/2005, 15h12
  5. date de...a dans un champ string
    Par Yepazix dans le forum Bases de données
    Réponses: 5
    Dernier message: 01/09/2004, 23h54

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