Php mysqli_查询未显示任何结果

Php mysqli_查询未显示任何结果,php,mysql,Php,Mysql,我想从MySQL表中检索与特定电子邮件匹配的数据。有2条记录与此电子邮件相关,但我的屏幕上没有打印任何内容 <?php $conn = mysqli_connect('localhost', 'root', '', 'testdrive'); $sql = mysqli_query($conn, 'SELECT * FROM products_bought where email = "'.mysqli_real_escape_string($con

我想从MySQL表中检索与特定电子邮件匹配的数据。有2条记录与此电子邮件相关,但我的屏幕上没有打印任何内容

<?php

$conn = mysqli_connect('localhost', 'root', '', 'testdrive');


$sql = mysqli_query($conn, 
        'SELECT * FROM products_bought
        where email = "'.mysqli_real_escape_string($conn, "a@gmail.com").'"'
    );
while($row = mysqli_fetch_array($sql)){
    $fullname = $row['fullname'];
    ?>
    <p><?php echo $fullname; ?></p>
    <?php
}

?>

此处:

<p><?php $fullname; ?></p>
还是使用回声的漫长道路

<p><?php echo $fullname; ?></p>


要检查您是否连接到DB,请尝试下面的代码和测试,同时检查您是否使用
打印
mysqli\u fetch\u数组($sql)
中获取数据

    <?php

    $conn = mysqli_connect('localhost', 'root', '', 'testdrive');

    if(mysqli_errno($conn))
    {

        echo"sum error";
    }
    else
    {
      $email = mysqli_real_escape_string($conn, "a@gmail.com");
      $sql = mysqli_query($conn, 'SELECT * FROM products_bought where email = "'.$email.'"'
        );
         while($row = mysqli_fetch_array($sql)){
          $fullname = $row['fullname'];
        ?>
        <p><?php echo $fullname; ?></p>
        <?php
         }
    }
 ?>

我不知道问题是从哪里来的,但我想帮你一点忙:

<?php
   $conn = mysqli_connect('localhost', 'root', '', 'testdrive');
   $sql = mysqli_query($conn,'SELECT * FROM products_bought
    where email = "'.mysqli_real_escape_string($conn, "a@gmail.com").'"');

   if($sql->num_rows > 0){ // Check existence of the data that received
      while($row = mysqli_fetch_array($sql)){
        $fullname = $row['fullname'];
        echo "<p>".$fullname."</p>"; // Why just echoing it in one <?PHP ?>
      }
   } else {
      // If no data sent. then check your db, cause the problems was in your db
   }
?>

}
}否则{
//如果没有发送数据,请检查数据库,因为问题出在数据库中
}
?>

选择
数据库
请重试

   $conn = mysqli_connect('localhost', 'root', '');
    $db = mysqli_select_db('testdrive');

数据库连接成功后请检查

mysqli_connect(数据库主机、数据库用户名、数据库密码、数据库名称)或die('无法连接到服务器')


因为您编写的查询是正确的。

但尚未得到结果:(

那么您还有另一个问题。请参阅我上面的评论。如果您检查各种mysqli调用是否失败,您会得到什么结果?在您的查询行中,在分号之前添加以下内容:'或死亡(mysqli\u错误($conn))如果查询失败,这将停止执行。此外,在while循环中,添加以下内容:“print\u r($row);'这将打印数组的所有值。@Paul我得到的和往常一样result@MattClark没有错误。但是屏幕上没有显示任何内容。您可以尝试将整个查询字符串分配给一个变量,然后在执行查询之前回显该变量吗?我现在的猜测是,查询的结果与您预期的不完全一样,因此它不会返回任何行。另一种想法是,在mysqli_connect之后添加相同的或死亡语句,以确保您获得了有效的连接。为速度和输入错误道歉,我在移动中。
mysqli_connect
足以做到这一点!…他被选为dbsorry i missing这一小改动@MichaelAntonio
   $conn = mysqli_connect('localhost', 'root', '');
    $db = mysqli_select_db('testdrive');