gpt4 book ai didi

php - 使用 mysqli_result() 获取特定列数据

转载 作者:行者123 更新时间:2023-11-30 23:01:08 25 4
gpt4 key购买 nike

我有一个验证用户登录的功能。

$login_query = mysqli_query($GLOBALS['conn'],
"SELECT COUNT(`user_id`) as `count`,`user_id` FROM `users`
WHERE `user_email`='$email' AND `user_password` = '" . md5($password) . "'") or die(mysqli_error($GLOBALS['conn']));
return ($mysqli_result->num_rows == 1) ?
mysqli_result($login_query, 0, 'user_id') : false;

我以前使用 mysql_*,现在切换到 mysqli_*

我想知道的是,在return 语句中,如何从数据库中选择的行返回user_id

最佳答案

我稍微简化了查询。如果登录成功,此函数将返回 user_id,否则返回“0”。

在配置文件中建立 $mysqli 连接,您可以将其包含在每个页面的顶部

#config.php#

$dbhost = "localhost";
$dbuser = "";
$dbpassword = "";
$dbdatabase = "";
$salt = "";
$mysqli = mysqli_connect($dbhost,$dbuser,$dbpassword,$dbdatabase);
if (mysqli_connect_errno())
{
echo '<p>There was a problem with the mysqli connection:
<br>&emsp;'.mysqli_connect_error().'</p>';
exit;
}

#Calling the function:#
require_once($_SERVER['DOCUMENT_ROOT'].'/config.php');
checklogin($email, $password, $salt, $mysqli);


function checklogin($email, $password, $salt="", $mysqli)
{

$email = $mysqli->real_escape_string($email);
$password = $mysqli->real_escape_string($password);

$login_query = '
SELECT *
FROM
`users`
WHERE
`user_email`='$email'
AND
`user_password` = "' . md5($salt.$password) . '";';

$result = $mysqli->query($login_query)
$row = $result->fetch_array();
if ($result->num_rows > 0)
{$user_id = $row['user_id'];}
else
{$user_id = 0;}

return $user_ID

}

关于php - 使用 mysqli_result() 获取特定列数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23919651/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com