我正在学习PHP PDO - 你如何根据它是否存在有条件地显示图像?我现在有下面的代码,但如果没有图片存在,那么就会有一个图片链接损坏的占位符..
代码:
$ARTICLE = $conn->prepare("SELECT blog_title, blog_article, blog_img FROM Blog WHERE blog_title=:blog_title");
$ARTICLE->bindParam(':blog_title', $blog_title, PDO::PARAM_STR, 25);
$ARTICLE->execute();
<?php
while ($r = $ARTICLE->fetch()) {
?>
<h1>
<?PHP
echo ($r['blog_title']);
?>
</h1>
<img src="images/<?PHP echo ($r['blog_img']);?>">
<?PHP
echo ($r['blog_article']);
?>
<?php
}
?>
<h1><?PHP
echo ($r['blog_title']);?></h1>
<img src="images/<?PHP echo ($r['blog_img']);?>">
<?PHP echo ($r['blog_article']);
?>
<?php
}
?>
答案 0 :(得分:0)
我会这样做:
if (!empty($r['blog_img']) && file_exists('path-to-image/' . $r['blog_img'])) {
// show blog_img
} else {
// show default image
}
答案 1 :(得分:-1)
您需要检查数据库中的字段是否为空,然后检查图像是否存在。 然后您可以显示图像或默认图像。
if(!empty($r['blog_img']) && file_exists('images/'.$r['blog_img'])) {
echo '<img src="images/'.$r['blog_img'].'">';
} else {
echo '<img src="images/brokenlink.gif">';
}