Empty

Résolu
Bonjour à tous,

Je sèche totalement sur le empty, en faites je veux que lorsque dans ma bdd le champ "cb" est vide, il doit affiché "Non" sinon "Oui"


<?php
if (empty($row['cb'])) {
echo ('Non')
}
else {
echo 'Oui';
}?>


Merci beaucoup.

5 réponses

  1. J'ai réussi !

    J'ai retrouve un exemple que j'avais fait il y a très longtemps, je mets le code pour les personnes intéressées :



    <?php

    if($row['cb']== '1'){
    echo 'Oui'; }
    elseif
    ($row['cb']== ''){
    echo 'Non';
    }

    ?>

    1. Contributeur
      bonjour, peux-tu faire
      var_dump($row['cb'])
      d'un enregistrement où tu penses que cb est vide?
      1. Bonjour,

        Déjà merci pour votre temps.

        @jordane : la valeur possible est "1" sinon le champ est vide, dans le bdd le champs est un VARCHAR.
        Par defaut, le champ est vide.
        Voilà ce qui est affiché avec ton exemple : "CB : cb = 1Non vide : Oui"

        @tyra : $decode vaut le nom de la ville, c'est une variable donné plus haut lors de la requette.

        Merci
        1. Fred, pour rappel les mots clés en SQL sont en majuscules par convention (à moins que ce soit une erreur de recopiage). Par contre, une petite explication pour la requête et que "vaut" $decode?
          1. Bonjour, la variable $row vaut quoi?
            1. Bonjour tyra

              Voici :


              $sql = "SELECT * FROM etablissement where type = 'hotel' AND ville = '$decode' AND visible='1'";
              if($result = mysqli_query($link, $sql)){
              if(mysqli_num_rows($result) > 0){
              while($row = mysqli_fetch_array($result)){ ?>
            2. Modérateur
              @fredodo13127Bonjour,
              Ce que Tyra demandai.. c'est que VAUT $row
              fais donc un PRINT
              while($row = mysqli_fetch_array($result)){ 
                print_r($row);
              
              
              
              
            3. J'ai ça :


              Array ( [0] => 144 [id] => 144 [1] => hotel [type] => hotel [2] => 2016-01-29 [date] => 2016-01-29 [3] => 2018-01-30 [dateexp] => 2018-01-30 [4] => Chateau de Taulane [nom] => Chateau de Taulane [5] => POTDEVIN [resp] => POTDEVIN [6] => 04 93 40 60 80 [tel] => 04 93 40 60 80 [7] => Le Logis du Pin [adresse] => Le Logis du Pin [8] => 83840 [cp] => 83840 [9] => La martre [ville] => La martre [10] => resahotel@chateau-taulane.com [mail] => resahotel@chateau-taulane.com [11] => https://www.chateau-taulane.com/fr/ [web] => https://www.chateau-taulane.com/fr/ [12] => Entre la C�te d'Azur et les Gorges du Verdon, pos� au coeur d�un domaine de 340 hectares, le Ch�teau de Taulane vous accueille dans un cadre enchanteur. Ce Domaine est situ� sur la plus belle et la plus audacieuse route de France : la Route Napol�on allant de Golfe-Juan � Grenoble en passant par Grasse. [situation] => Entre la C�te d'Azur et les Gorges du Verdon, pos� au coeur d�un domaine de 340 hectares, le Ch�teau de Taulane vous accueille dans un cadre enchanteur. Ce Domaine est situ� sur la plus belle et la plus audacieuse route de France : la Route Napol�on allant de Golfe-Juan � Grenoble en passant par Grasse. [13] => Splendide demeure du XVIIIe si�cle transform�e en h�tellerie 4 �toiles, il allie charme de l�ancien et confort d�aujourd�hui avec succ�s. Class� dans les 10 meilleurs parcours de France, son prestigieux parcours de golf sign� Gary Player dans un cadre exceptionnel � 1000 m d�altitude est une invitation � se ressourcer dans une ambiance conviviale et reposante. Un service discret, une atmosph�re chaleureuse et une aventure culinaire unique vous attend! D�lassez-vous dans l�ambiance douce et chaude de notre � Espace Bien-�tre � : Piscine int�rieure chauff�e, Sauna, Hammam, Jacuzzi (Acc�s libre pour les clients r�sidant � l'h�tel). [commentaires] => Splendide demeure du XVIIIe si�cle transform�e en h�tellerie 4 �toiles, il allie charme de l�ancien et confort d�aujourd�hui avec succ�s. Class� dans les 10 meilleurs parcours de France, son prestigieux parcours de golf sign� Gary Player dans un cadre exceptionnel � 1000 m d�altitude est une invitation � se ressourcer dans une ambiance conviviale et reposante. Un service discret, une atmosph�re chaleureuse et une aventure culinaire unique vous attend! D�lassez-vous dans l�ambiance douce et chaude de notre � Espace Bien-�tre � : Piscine int�rieure chauff�e, Sauna, Hammam, Jacuzzi (Acc�s libre pour les clients r�sidant � l'h�tel). [14] => [comment] => [15] => [promo] => [16] => 4 [etoiles] => 4 [17] => 35000 [superficie] => 35000 [18] => 0 [tarif] => 0 [19] => 110 [min] => 110 [20] => 590 [max] => 590 [21] => 46 [nb_chambre] => 46 [22] => 1 [cheque] => 1 [23] => 1 [cb] => 1 [24] => [ch_vac] => [25] => 2016-04-01 [ouverture] => 2016-04-01 [26] => 2016-10-30 [fermeture] => 2016-10-30 [27] => 1 [piscine] => 1 [28] => [barbecue] => [29] => [mobil] => [30] => [caravane] => [31] => 1 [wifi] => 1 [32] => [tente] => [33] => [tennis] => [34] => [handicap] => [35] => 1 [animaux] => 1 [36] => [resto] => [37] => [jeux] => [38] => [lavelinge] => [39] => [lavevaisselle] => [40] => [cuisine] => [41] => 1 [tv] => 1 [42] => 1 [spa] => 1 [43] => [micro_onde] => [44] => [dvd] => [45] => [clim] => [46] => [jardin] => [47] => [terrasse] => [48] => [drap] => [49] => [tablehote] => [50] => 43.7793094 [longit] => 43.7793094 [51] => 6.6317296 [lat] => 6.6317296 [52] => 56ab3680a3276.jpg [img] => 56ab3680a3276.jpg [53] => 56ab3680a62bb.jpg [img2] => 56ab3680a62bb.jpg [54] => 56ab3680aa761.jpg [img3] => 56ab3680aa761.jpg [55] => 56ab3680aceda.jpg [img4] => 56ab3680aceda.jpg [56] => 1 [visible] => 1 [57] => 1 [new] => 1 )


              Désolé suis perdu avec les fonctions....
            4. Modérateur
              @fredodo13127Donc CB .. ici... vaut 1
               [cb] => 1 

              Quelles autres valeurs peut il avoir ?
              De quel "type" le champ dans ta BDD est il ? Numérique (INT, LONG ....) ? Text ( Varchar ..)?.
              Quelle est sa valeur par défaut dans la bdd ? (si numérique .. 0 non ? )

              <?php
              
              // Si existe et non vide :
              $cb = !empty(trim($row['cb'])) ? $row['cb'] : NULL;
              $msg = $cb ? " Oui" : "Non" ;
              echo ' cb = ' .$cb; //le temps des tests
              echo "Non vide :" . $msg;
              ?>