Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 简单查询返回ELSE块中的结果,而不是IF中的结果_Php_Mysql_Pdo - Fatal编程技术网

Php 简单查询返回ELSE块中的结果,而不是IF中的结果

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)

请原谅我的“新手”问题,但我有一个简单的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);
$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>';
    }