显示在php中获取mysql数据的结果

时间:2014-08-20 20:00:28

标签: php mysql

我不确定我是否正在进行连接和100%查询,但由于我得到的错误只是结果我假设我。但是,我不知道如何正确处理数据以显示它。

PHP:

$query = SELECT * FROM `user` WHERE `email` = 'mflem@yahoo.com' AND 'password' = 'password'

$db = new mysqli('localhost','root','','xxxxxxx') or die('unable to connect!');
if($db->connect_errno){
   $message = $db->connect_error;
} else{
   if($result = $db->query($query)){
       $result->close();
       while($row = mysqli_fetch_assoc($result)){
          echo "result: " . $row['user_Id'];
       }
       return $result;
   } else{
       $message = $db->error;
       return $message;
   }
}
$db->close();

它说的浏览器控制台中的错误。


警告:mysqli_fetch_assoc():无法在 14 C:\ xampp \ htdocs \ apps \ MyVyn \ Utils \ utils \ servConn.php 中获取mysqli_result

注意:未定义变量:在 36 <返回 C:\ xampp \ htdocs \ apps \ MyVyn \ Utils \ utils \ servConn.php BR />

有人能指出我缺少的东西吗?还有哪些更好的方法从您的数据库中获取数据并显示结果?

1 个答案:

答案 0 :(得分:0)

修改

我:“你没有选择任何东西。”

  

OP:“这些是,我没有注意到我没有包含它。”

发布时始终发布完整代码。当省略某些东西时,它会留下混淆的空间。


你没有选择任何东西。

意思是,您需要从数据库表中选择列/列或所有*

示例:

$query = mysqli_query($db,"SELECT column FROM table_name");

$query = mysqli_query($db,"SELECT column_1, column_2 FROM table_name");

$query = mysqli_query($db,"SELECT * FROM table_name");

然而,我建议您查看use prepared statementsPDO with prepared statements,您可以使用许多示例作为基础。


编辑:#2

您正在使用$db->close();过早地关闭数据库连接:

else{
   if($result = $db->query($query)){
       $result->close();
       while($row = mysqli_fetch_assoc($result)){
          echo "result: " . $row['user_Id'];
       }
       $db->close(); // <= there
       return $result;
   } else{
       $message = $db->error;
       $db->close(); // <= there
       return $message;
   }
}

从所有循环中删除$result->close();,并将其置于成功查询之外。