gpt4 book ai didi

PHP 选择不工作

转载 作者:行者123 更新时间:2023-11-29 14:06:40 25 4
gpt4 key购买 nike

我正在尝试进行用户通行证验证。更新代码:

$username="------";
$password="------";
$database="------";
$host = "------";


mysql_connect($host,$username,$password);
mysql_select_db($database) or die( "Unable to select database");

$username = $_POST['username'];
$password = $_POST['password'];

echo 'username: ' . $username . '<br>'; //myname
echo 'password: ' . $password . '<br>'; //mypass

function checkpass()
{
//$result = mysql_query("SELECT * FROM REG_USERS where USERNAME='$_POST[username]' and PASSWORD='$_POST[password]' ") or die(mysql_error());
$result = mysql_query("SELECT * FROM REG_USERS where USERNAME='" . $username . "' and PASSWORD='" . $password . "'") or die(mysql_error());
return mysql_num_rows($result);
}

checkpass();
echo 'checkpass:'. checkpass();

在第一个查询中,checkpass 返回 1。在第二个查询中,它返回 0。为什么?

最佳答案

好的,现在我们有了完整的代码,很明显。

$username$password 不是全局的。该函数不知道它们的设置是什么。

$username = $_POST['username'];
$password = $_POST['password'];

echo 'username: ' . $username . '<br>'; //myname
echo 'password: ' . $password . '<br>'; //mypass

function checkpass()
{
$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string($_POST['password']);

//$result = mysql_query("SELECT * FROM REG_USERS where USERNAME='$_POST[username]' and PASSWORD='$_POST[password]' ") or die(mysql_error());
$result = mysql_query("SELECT * FROM REG_USERS where USERNAME='" . $username . "' and PASSWORD='" . $password . "'") or die(mysql_error());
return mysql_num_rows($result);
}

注意,我了解 mysqli。 OP 没有询问它,我也没有对此着迷,但我添加了 mysql_real_escape_string 以达到良好的效果。

关于PHP 选择不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14244602/

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