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 :

comparaison de date dans mysql


Sujet :

PHP & Base de données

  1. #1
    Membre régulier
    Femme Profil pro
    en formation
    Inscrit en
    septembre 2019
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ariège (Midi Pyrénées)

    Informations professionnelles :
    Activité : en formation

    Informations forums :
    Inscription : septembre 2019
    Messages : 83
    Points : 78
    Points
    78
    Par défaut comparaison de date dans mysql
    Bonjour.
    Est ce que vous sauriez m'indiquer comment faire pour comparer deux dates
    quelque chose du genre si $date1 et inférieur ou égale à $fin enregistrer la valeur chambre dans $numéro.
    Si aucune valeur alors $numero =101
    voila à quoi ressemble ma table:

    id creation debut fin choicecity chambre nom mail


    J'ai essayer cette commande :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $sql = "SELECT `debut`, `fin`, `chambre` FROM `reservation` WHERE $fin< 2021-01-03";
    mais je récupérer toute les dates y compris les dates supérieur au 2021-01-05.

    merci au bonne volontés qui auron la connaissance et la gentillesse de me répondre

  2. #2
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    février 2019
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : février 2019
    Messages : 13
    Points : 17
    Points
    17
    Par défaut
    Hello,
    essaye en ajoutant des quotes 'TADATE ' simple autour de ta date.

    Car la c'est pas top ton code
    Le problème doit venir de ça, car tu ne formates pas ta date de la bonne façon pour comparer. (je ne suis pas sur mysql mais je suis quasi sur que le problème vient de là, ton formatage)

  3. #3
    Membre régulier
    Femme Profil pro
    en formation
    Inscrit en
    septembre 2019
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ariège (Midi Pyrénées)

    Informations professionnelles :
    Activité : en formation

    Informations forums :
    Inscription : septembre 2019
    Messages : 83
    Points : 78
    Points
    78
    Par défaut aprés modification nouvelle etape et nouveau probleme
    dans la fonction suivante si il existe ne date (fin) dans ma table il compare avec ce qu'il trouve pour savoir si il utilise la mème chambre ou pas.
    Mais par contre si il ne trouve aucune chambre donc en théorie : if(empty($row['chambre']) je veux qu'il donne la valeur 101 à numero.
    je n'arrive pas à le faire rentrer dans la condition pas de chambre trouvé dans la base.
    Une idée SVP

    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
    19
    20
     
     
    function verifdate($name, $choicecity, $datedebut, $datefin){
        $host = 'localhost';
        $dbname = 'mabase';
        $username = 'root';
        $password = '';
        $dsn = "mysql:host=$host;dbname=$dbname"; 
        $pdo = new PDO($dsn, $username, $password);
        $sql="SELECT fin, chambre FROM reservation WHERE fin <= '$datedebut' AND choicecity='$choicecity'";
        $stmt = $pdo->query($sql);
        while($row = $stmt->fetch(PDO::FETCH_ASSOC)):
          if (empty($row['chambre'])) {$numero=101; 
            echo $numero;
            exit;    }
          elseif (isset($row['chambre'])) {$numero=$row['chambre'];      
             $foo = $this->rec($name, $choicecity, $datedebut, $datefin, $numero, $pdo);    
          }      
        endwhile;
      }

  4. #4
    Membre actif
    Homme Profil pro
    Webmaster - Développeur/intégrateur web
    Inscrit en
    septembre 2011
    Messages
    186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Jura (Franche Comté)

    Informations professionnelles :
    Activité : Webmaster - Développeur/intégrateur web
    Secteur : Conseil

    Informations forums :
    Inscription : septembre 2011
    Messages : 186
    Points : 211
    Points
    211
    Par défaut
    Je suis pas sur d'avoir bien compris... le problème actuel est que la fonction ne retourne rien si la requête ne retourne aucun résultat c'est ça ?

    Dans ce cas voici une solution à tester :

    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
    19
    20
    21
    22
    23
    24
     
    function verifdate($name, $choicecity, $datedebut, $datefin){
        $host = 'localhost';
        $dbname = 'mabase';
        $username = 'root';
        $password = '';
        $dsn = "mysql:host=$host;dbname=$dbname"; 
        $pdo = new PDO($dsn, $username, $password);
        $sql="SELECT fin, chambre FROM reservation WHERE fin <= '$datedebut' AND choicecity='$choicecity'";
        $stmt = $pdo->query($sql);
        $rows = $stmt->fetch(PDO::FETCH_ASSOC);
         if (count($rows) === 0) {
            echo 101;
            exit;
        }
        foreach($rows as $row):
          if (empty($row['chambre'])) {$numero=101; 
            echo $numero;
            exit;    }
          elseif (isset($row['chambre'])) {$numero=$row['chambre'];      
             $foo = $this->rec($name, $choicecity, $datedebut, $datefin, $numero, $pdo);    
          }      
        endforeach;
      }
    Si vous avez besoin d'une librairie permettant de gérer facilement les fichiers et les dossiers en PHP... ou si vous êtes juste curieux(se) :
    https://github.com/moDevsome/moFilesManager

    N'hésitez pas à me faire un retour

  5. #5
    Membre régulier
    Femme Profil pro
    en formation
    Inscrit en
    septembre 2019
    Messages
    83
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ariège (Midi Pyrénées)

    Informations professionnelles :
    Activité : en formation

    Informations forums :
    Inscription : septembre 2019
    Messages : 83
    Points : 78
    Points
    78
    Par défaut
    Super merci. Ca marche.

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

Discussions similaires

  1. Comparaison de dates dans Mysql
    Par inch dans le forum Requêtes
    Réponses: 2
    Dernier message: 05/05/2007, 13h08
  2. [RegEx] Insérer une date dans MYSQL
    Par pony99 dans le forum Langage
    Réponses: 7
    Dernier message: 14/11/2006, 19h51
  3. Comparaisons de dates dans un SELECT
    Par lodan dans le forum Requêtes
    Réponses: 4
    Dernier message: 06/10/2006, 15h26
  4. [XE] Comparaison de dates dans un Trigger
    Par Nicodemus dans le forum Oracle
    Réponses: 2
    Dernier message: 20/02/2006, 17h37
  5. [Date dans Mysql] Prise en compte des espaces
    Par tchoukapi dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 02/01/2006, 04h41

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