【问题标题】:How to return the result of a mysqli_query so I can use it in another function? [duplicate]如何返回 mysqli_query 的结果以便我可以在另一个函数中使用它? [复制]
【发布时间】:2013-03-08 23:40:17
【问题描述】:

我正在尝试从数据库中返回用户的 ID 号,但我不知道如何返回查询结果。我曾经使用 mysql_result() 那么现在我使用 mysqli 需要做什么?

function user_id_from_username($username){
$query = mysqli_query($conn, "SELECT `user_id` FROM `users` WHERE `username` = '$username'");

return (what?);
}

【问题讨论】:

  • 我不想从数据库中选择它。我知道该怎么做。我正在尝试将查询结果从函数传回,以便可以在其他函数中使用
  • 怎么不选择数据?不选择就不能使用数据。
  • 我已经选择了数据。我只是不知道如何从函数中返回它
  • 不,您没有,您已经运行了查询,发布的代码中没有“选定”数据。
  • 好吧,如果你不介意我问,我该如何选择数据。对不起。我只是想弄清楚这个

标签: php mysql mysqli


【解决方案1】:

您还没有获得从 mysql 迁移到 mysqli 的主要好处之一,即使用准备好的语句来参数化您的查询并保护自己免受注入。

$query = mysqli_prepare($conn, "SELECT user_id FROM `users` WHERE username = ?");
mysqli_stmt_bind_param($query, "s", $username);
mysqli_stmt_execute($query);
mysqli_stmt_bind_result($query, $userid);
mysqli_stmt_fetch($query);
//$userid is now user_id

【讨论】:

    【解决方案2】:

    检查此http://php.net/manual/en/mysqli.query.php 以了解 myqli_query 的使用情况。还有这个http://www.php.net/manual/en/class.mysqli-result.php,关于如何从结果中获取值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-06-07
      • 2021-04-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多