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 :

Annonces ayant moins de 2 jours [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé Avatar de heteroclite
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 147
    Par défaut Annonces ayant moins de 2 jours
    Bonjour,


    Voilà ma question.
    J'ai une base de donnée dans laquelle sont enregistrées des annonces avec une date de publication.(type 0000-00-00)
    Je voudrais afficher les annonces dont la date de publication est inferieure ou egale à deux jours ....comment faire ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM `annonce` WHERE `datepub`.........
    Merci d'avance pour votre aide !

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT `societe` FROM `annonce` WHERE `datepub` BETWEEN NOW() - INTERVAL 2 DAY AND NOW();
    -- ou encore
    SELECT `societe` FROM `annonce` WHERE TO_DAYS(NOW()) - TO_DAYS(`datepub`) <= 2;

  3. #3
    Membre confirmé Avatar de heteroclite
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 147
    Par défaut
    Bonjour,

    j'ai fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $req = 'SELECT * FROM `annonce` WHERE TO_DAYS(NOW()) - TO_DAYS(`datepub`) <= 2';
    if (@ mysql_num_rows($req) < 1) {
        echo 'Aucune annonce ne correspond pour l\'instant à votre recherche';
    } 
    // boucle sur mes annonces 
    while($data = mysql_fetch_assoc($req))
    et j'obtiens le message d'erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Aucune annonce ne correspond pour l'instant à votre recherche
    Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home/ser/public_html/testaff1.php on line 17
    la ligne 17 c'est celle la
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    while($data = mysql_fetch_assoc($req))
    une idée du problème ?


    Merci d'avance !

  4. #4
    Membre éclairé Avatar de Huntress
    Femme Profil pro
    Inscrit en
    Août 2004
    Messages
    475
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 475
    Par défaut
    Oui oui, le problème c'est que ta requête tu ne l'exécutes pas donc forcément c'est pas chose fastoche de l'exploiter

    > http://fr2.php.net/manual/fr/function.mysql-query.php


    Edit : Un conseil si tu débutes... ne commence pas à programmer avec des @ devant tes fonctions... code dégueu et galère assurée

  5. #5
    Membre confirmé Avatar de heteroclite
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 147
    Par défaut
    merci !
    ça va mieux comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $sql = 'SELECT * FROM `annonce` WHERE TO_DAYS(NOW()) - TO_DAYS(`datepub`) <= 2';
    $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

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

Discussions similaires

  1. Datediff moins d'un jour
    Par scartik dans le forum Développement
    Réponses: 5
    Dernier message: 22/05/2011, 10h09
  2. Réponses: 43
    Dernier message: 22/10/2009, 00h04
  3. Réponses: 3
    Dernier message: 23/09/2009, 05h02
  4. [MySQL] Afficher les enregistrements de moins de (x) jours.
    Par weelson@mac.com dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 19/02/2007, 18h31
  5. requette where date="moins de 2 jours"
    Par nmerydem dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 18/05/2004, 16h58

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