首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将登录代码更新为MySQLi

问将登录代码更新为MySQLi
EN

Stack Overflow用户
提问于 2015-05-02 17:50:01
回答 1查看 37关注 0票数 0

我正在尝试更新这部分旧的MySQL代码,以便与MySQLi一起运行。我知道MySQL_return function被删除了,我尝试过一些东西,但不太确定如何将这段代码转换为使用MySQLi运行?如有任何意见或帮助,将不胜感激。

代码语言:javascript
复制
function user_id_from_username($email_address, $conn) {
    return mysql_return(mysqli_query($conn, "SELECT `userid` FROM `users` WHERE `email_address` = '$email_address'"), 0, 'userid');
}


function login($email_address, $password, $conn) {
    $userid = user_id_from_username($email_address);

    $password = md5($password);

    return  (mysql_return(mysqli_query($conn, "SELECT COUNT(`userid`) FROM `users` WHERE `email_address` = '$email_address' AND `password` = '$password'"), 0) ==1) ? $userid : false;

}

我曾尝试过这样的编辑:

代码语言:javascript
复制
function user_id_from_username($email_address, $conn) {
    return mysqli_fetch_assoc(mysqli_query($conn, "SELECT `userid` FROM `users` WHERE `email_address` = '$email_address'"), 0, 'userid');
}


function login($email_address, $password, $conn) {
    $userid = user_id_from_username($email_address);

    $password = md5($password);

    return  (mysqli_fetch_assoc(mysqli_query($conn, "SELECT COUNT(`userid`) FROM `users` WHERE `email_address` = '$email_address' AND `password` = '$password'"), 0) ==1) ? $userid : false;

}

但没有运气。有什么建议或例子吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-02 18:17:10

如果查询成功执行,$mysqli->query();方法将返回一个$mysqli_result,否则将返回FALSE。然后,您可以调用fetch_assoc();从查询中获取第一行。结果数组将以关联数组的形式出现。下面是一些您应该阅读的文档:http://php.net/manual/en/mysqli.query.php和http://php.net/manual/en/mysqli-result.fetch-assoc.php

代码语言:javascript
复制
function getIdFromEmail($email) {
  $emailSanitized=mysqli_real_escape_string($email);
  $mysqli=new mysqli("host","user","password","dbName");
  $res=$mysqli->query("SELECT `userid` FROM `users` WHERE `email_address`='$emailSanitized'");
  $retArray=$res->fetch_assoc();
  return $retArray['userId'];      
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30005544

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档