Php 简单查询返回ELSE块中的结果,而不是IF中的结果
请原谅我的“新手”问题,但我有一个简单的pdo查询问题。我所做的是从两个表中查询,并根据用户的id显示他上传的所有图像。这是密码Php 简单查询返回ELSE块中的结果,而不是IF中的结果,php,mysql,pdo,Php,Mysql,Pdo,请原谅我的“新手”问题,但我有一个简单的pdo查询问题。我所做的是从两个表中查询,并根据用户的id显示他上传的所有图像。这是密码 $sql = "SELECT * FROM user_images LEFT JOIN users ON user_images.user_id = users.id WHERE user_images.user_id=:user_id"; $stmt = $db_con->prepare($sql)
$sql = "SELECT * FROM user_images
LEFT JOIN users
ON user_images.user_id = users.id
WHERE user_images.user_id=:user_id";
$stmt = $db_con->prepare($sql);
$stmt->bindParam(":user_id", $_SESSION['user']['id']);
$stmt->execute();
$user_photos = $stmt->fetch();
if (is_object($user_photos) && !empty($user_photos) && $user_photos->num_rows > 0) {
while ($row = $user_photos->fetch_assoc()) { ?>
<img src="uploads/<?php echo $row->images_name; ?>">
<?php }} else { ?>
<li style="text-align: center">
No Images Found!
</li>
<?php } ?>
$sql=“从用户图像中选择*
左加入用户
在user\u images.user\u id=users.id上
其中user\u images.user\u id=:user\u id“;
$stmt=$db\u con->prepare($sql);
$stmt->bindParam(“:user\u id”,$\u SESSION['user']['id']);
$stmt->execute();
$user_photos=$stmt->fetch();
如果(是对象($user\u photos)&&&!空($user\u photos)&&$user\u photos->num\u rows>0){
而($row=$user\u photos->fetch\u assoc()){?>
图像_name;?>“>
没有找到图像!
这里发生的情况是,如果在中阻止图像,则图像没有显示。相反,如果我在中执行var\u dump($row->images\u name);
否则阻止图像可见。$sql=“SELECT*FROM user\u images”
$sql = "SELECT * FROM user_images
LEFT JOIN users
ON user_images.user_id = users.id
WHERE user_images.user_id = ?";
$stmt = $db_con->prepare($sql);
if ($stmt->execute(array($_SESSION['user']['id']))) {
while ($row = $stmt->fetch()) {
echo '<img src="uploads/', $row['images_name'], '">';
}
}
if (empty($row)) { ?>
<li style="text-align: center">
No Images Found!
</li>
<?php } ?>
左加入用户
在user\u images.user\u id=users.id上
其中user_images.user_id=?”;
$stmt=$db\u con->prepare($sql);
if($stmt->execute(数组($\u会话['user']['id'])){
而($row=$stmt->fetch()){
回声';
}
}
如果(空($row)){?>
没有找到图像!
使用php函数的另一种方法count()
Use:-if($user\u photos->num\u rows>0){
仅限。这就足够了。返回注意:试图获取非对象的属性
为什么会有这么多否决票?请解释一下,因为我不像你那样是专家。我没有否决票。那么我怎么说呢?这很荒谬:因为你说如果
和其他
同时执行,谢谢,这对我来说很有效呃,我仍然不知道是什么问题,你得到了$stmt->fetch();
的返回,并使用了另一个函数来获取结果。之后发生的一切都很有趣。
<?php
$sql = "SELECT * FROM user_images
LEFT JOIN users
ON user_images.user_id = users.id
WHERE user_images.user_id=:user_id";
$stmt = $db_con->prepare($sql);
$stmt->bindParam(":user_id", $_SESSION['user']['id']);
$stmt->execute();
$user_photos = $stmt->fetchAll();
if (count($user_photos) > 0) {
foreach ($user_photos as $row) {
echo '<img src="uploads/'.$row['images_name'].'">';
}
} else {
echo '<li style="text-align: center">No Images Found!</li>';
}