因此。我正在研究一个简单的系统。我有以下代码:
$sql = mysqli_connect($db_host, $db_user, $db_pass, $db_name);
$aaa="SELECT UserName,activeuntil from sessions WHERE `sessionid`='$b' AND `sessiontype`=$a";
$sqc=mysqli_prepare($sql,$aaa);
mysqli_execute($sqc);
mysqli_bind_result($sqc,$un,$til);
while(mysqli_fetch($sqc)){echo $un;if(strtotime($til)>time())$user=$un;}
echo "Hi, $user";
$ aaa在我的案例中产生:
SELECT UserName,activeuntil from sessions WHERE `sessionid`='rc1xamoblbqxul78czfsvub62fudzc' AND `sessiontype`=0
这是PhpMyAdmin中完美运行的查询。但是,代码总体上不会产生结果(应该有1行)。为什么?我想我错过了很简单的东西,但是什么?
P.S。:如果你只能说“请清理你的输入”,“这种编码方式很糟糕”,不要回答这个,因为这些将被修复。感谢。
答案 0 :(得分:0)
我建议:
$link = mysqli_connect($db_host, $db_user, $db_pass, $db_name);
$query ="SELECT UserName,activeuntil from sessions WHERE 'sessionid'='$b' AND 'sessiontype'=$a";
$query = mysqli_query($link, $query);
while($row = mysqli_fetch_object($query))
{
echo "Hi ".$row->UserName;
}
答案 1 :(得分:0)
当我在php中遇到查询问题时,我会回显我的SQL字符串并在PHPmyAdmin中运行它。如果它执行正常,那么您的连接有错误。希望这会有所帮助。
答案 2 :(得分:0)
我忘记了一个简单的,非SQL相关的东西(一个包含声明......)。无论如何,谢谢你的所有答案。