J'ai une balise HTML ici:l'image d'écho selon une condition
<span class="fa-stack fa-5x has-badge" >
<div class="badgesize">
<img src="badgeImages/1.png" alt="" >
</div>
</span> -->
requête utilisée pour extraire les informations et les stocker dans une variable:
$q4 = "SELECT TOP 3 b.BadgeName, b.BadgeImage FROM BadgeImageTable AS b
INNER JOIN employee_badge AS e
ON e.badge_id = b.BadgeID
WHERE e.employee_id = 2164
ORDER BY e.earned_on DESC ";
$stmt3=sqlsrv_query($conn,$q4);
if($stmt3==false)
{
echo 'error to retrieve info !! <br/>';
die(print_r(sqlsrv_errors(),TRUE));
}
Dans la balise image que je suis en train de faire écho à l'image d'un badge avec certaines conditions.
<span class="fa-stack fa-5x has-badge" >
<div class="badgesize">
<img src="
<?php
if($count = sqlsrv_num_rows($stmt3) > 0){
while($recentBadge = sqlsrv_fetch_array($stmt3)){
$result[] = $recentBadge;
}
if($count > 3){
$result = array_rand($result, 3);
}
foreach($result as $recentBadge){
echo
$recentBadge['BadgeName'],
'<img src="'.$recentBadge['BadgeImage'].'">',
'<br>'
;
}
} else {
echo 'no results';
}
?>
" alt="" >
</div>
</span>
Etat PHP ci-dessus:
Je veux faire écho à toutes les trois images aléatoires si le nombre est supérieur à 3, quel que soit d'autre écho « $ recentBadge » donne le résultat.
Problème: Je ne suis pas capable de faire écho selon la condition ci-dessus.
Chaque fois que j'essaie de faire écho une image simple sans aucune condition (en utilisant PHP ci-dessous), je peux le faire sans aucun problème. Donc, je suis capable de récupérer l'image de la base de données, le problème réside dans le PHP conditionnel.
<img src="<?php echo "".($badgerecent['BadgeImage']).""; ?>" >
Une indentation de code sensible serait une bonne idée. Il nous aide à lire le code et plus important encore, il vous aidera ** à déboguer votre code ** [Jetez un coup d'œil à une norme de codage] (http://www.php-fig.org/psr/psr-2/) pour votre propre bénéfice. Il vous sera peut-être demandé de modifier ce code dans quelques semaines/mois et vous me remercierez à la fin. – RiggsFolly
___Question___ Sur combien de serveurs SQL testez-vous actuellement? – RiggsFolly
'if ($ count = sqlsrv_num_rows ($ stmt3)> 0) {' doit être nettoyé. –