2014-07-20 7 views
-1

Je tire des images et des informations à partir d'une base de données mySQL et affiche avec quelques fonctions PHP. Parfois, toutes les informations ne sont pas là et j'en ai besoin essentiellement display:none; mais je n'arrive pas à l'obtenir - Qu'est-ce qui me manque? Voici ma fonction d'affichage:PHP If et else statement -

<?php if ($recipe->hassliderimage5 == true) { 
    $recipe->show_image_carousel5(); 
    } else { 
    } 

?> 

Et est ici la fonction PHP appelant à partir de la base de données -

if (trim(mysql_result($this->result,0,"imageCarousel5") != '')) {$this->hassliderimage5 = true;} else {$this->hassliderimage5 = false;} 

Voici ce que je dois travailler pour ce que je voulais - pas sûr si elle est la meilleure solution ou non? Je suis encore un peu nouveau sur PHP.

<?php if ($recipe->hassliderimage5 == true) { ?> 
     <div id="sliderimageFive" class="item"> 
      <?php 
       $recipe->show_image_carousel5(); 
      ?> 
     </div>  
<?php } ?> 

Répondre

0

Vous semblez faire l'erreur de créer votre vue avant de collecter les données qui doivent être affichées. Une structure d'application plus logique consisterait à extraire les données de la base de données, à les valider, puis à créer votre vue en fonction de la quantité et du type de données dont vous disposez.

Aussi, jetez un oeil à ceci: Why shouldn't I use mysql_* functions in PHP?

+0

Très bien, je vais y jeter un coup d'œil. Merci @Chris – jacob

0

Je ne peux pas commenter parce que j'ai la réputation ne suffit pas, donc je l'essayer avec une réponse.

pourquoi vous utilisez la garniture sur mysql_result($this->result,0,"imageCarousel5") != '' ce code vous donnera true ou false aucune chaîne vous devez couper

Peut-être que vous voulez couper le retour de mysql_result puis vérifier si son vide

if (trim(mysql_result($this->result,0,"imageCarousel5")) != '') {$this->hassliderimage5 = true;} else {$this->hassliderimage5 = false;} 
0

Essayez ce test:

<?php if (filter_var(recipe->hassliderimage5, FILTER_VALIDATE_BOOLEAN) == true) { 
    $recipe->show_image_carousel5(); 
} else { 
    // do other 
} 
?> 

si return true si la valeur de 'Recette-> hassliderimage5' est "1", "true", "on" et "oui"

Profitez de votre code!

+0

surengineering? –