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

PHP & Base de données Discussion :

actualité sur période définie [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 660
    Billets dans le blog
    1
    Par défaut actualité sur période définie
    Bonjour,


    J'ai une table actuialite(id_atu, titre_actu, text_actu, debut_actu, fin_actu)

    Le but afficher une actualité sur un site internet en focntion de la date serveur ...
    Mon souci n'est pas d'afficher l'actu, ça c'est relativement simple, mon souci est plutot au niveau de la saisie de l'actu, les actualités ne doivent pas se chevaucher, et je dois avoir un backoffice de gestion des actualités.
    L'utilisateur doit pouvoir créer un actu et lui donnner une date de debut et de fin qui ne chevauche pas d'autres actualité ...
    J'avais pensé à impose la date de début= date de fin +1 de la dernière... mais quid si je dois inserere una actu ...
    Quelqu'un sait il comment gerer cela ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  2. #2
    Membre émérite Avatar de |PaRa-BoL
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    738
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 738
    Par défaut
    Tu peux vérifier si la place est déjà prise avec quelque chose du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT COUNT(id_actu) FROM actu WHERE $date_debut < fin_actu AND debut_actu < $date_fin
    ou $date_debut et $date_fin sont les dates demandées par l'utilisateur

  3. #3
    Membre Expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Par défaut
    Citation Envoyé par |PaRa-BoL Voir le message
    Tu peux vérifier si la place est déjà prise avec quelque chose du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT COUNT(id) FROM actu WHERE $date_debut < date_end AND date_start < $date_fin
    ou $date_debut et $date_fin sont les dates demandées par l'utilisateur
    Je mettrais plutot un OR que un AND. Toi tu cherches toutes les actus qui finissent apres la date de début ET qui commencent avant la date de fin.

    Ca serait plutot "cherche toutes les actus qui finissent apres la date de début (=> échec) OU celles qui commencent avant la date de fin (=> echec aussi).

    EDIT : j'ajouterai que a ta place je ferai une sorte de liste a choix multiple sur les dates a laquelle la l'actualité doit etre disponible

    et avant de remplir la liste des dates actuellement disponibles ben tu regardes celles déjà occupées dans la base.

    EDIT 2 : effectivement le AND semble mieux marcher que le OR j'ai encore bu a midi je crois.

  4. #4
    Membre émérite Avatar de |PaRa-BoL
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    738
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 738
    Par défaut
    Non cela va justement vérifier si il y a une actu qui chevauche la date demandée

  5. #5
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 660
    Billets dans le blog
    1
    Par défaut
    ha oui et du coup je peu même soprtir la liste des actus qui chevauchent avec un left outer joint ....

    je vais voir ce que je peux faire à partir de ça ... cela me parait prometteur

    Merci les gars
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 660
    Billets dans le blog
    1
    Par défaut
    bon je ne m'en sors pas avec ma selection d'actualité ...

    j'ai une table actualites(id_actu, titre_actu, texte_actu, debut_actu,fin_actu)

    je voudrais en focntion de la date du jour sortir l'actualité courante :

    debut et fin actu sont au format date dans la base


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $Today=date('Y-m-d');
     
    $sqlActu="SELECT titre_actu as TitreActu,
    					texte_actu as TexteActu,
    					fin_actu as FinActu
    					from actualites
    					 WHERE ('".$Today."' BETWEEN debut_actu AND fin_actu)";
    j'ai aussi tenté :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $sqlActu="SELECT titre_actu as TitreActu,
    					texte_actu as TexteActu,
    					fin_actu as FinActu
    					from actualites
    					 WHERE (date_format(now(), '%M %D, %Y')  BETWEEN debut_actu AND fin_actu)";
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 24/11/2008, 14h31
  2. Sortir un état d'une période définie
    Par Homer091 dans le forum IHM
    Réponses: 6
    Dernier message: 07/05/2008, 17h18
  3. [x86_64] Passer un pointeur sur tableau défini dans .data
    Par khazna dans le forum x86 32-bits / 64-bits
    Réponses: 6
    Dernier message: 24/04/2008, 19h49
  4. Total Cumulé sur période glisante en CR9
    Par nanouille56 dans le forum SAP Crystal Reports
    Réponses: 7
    Dernier message: 12/07/2005, 15h07

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