【发布时间】:2012-06-07 17:54:51
【问题描述】:
所以。我正在开发一个简单的系统。我有以下代码:
$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.:如果您只能说“请清理您的输入”、“这种编码风格很糟糕”,请不要回答这个问题,因为这些都会被修复。谢谢。
【问题讨论】:
-
在尝试找出其他可能不正确的地方之前,先修复您知道错误的地方。
-
这更重要,因为稍后需要进行消毒(目前不会公开)。
-
我没有看到您的代码中定义了
$a或$b。 -
它们是之前定义的。 (在这种情况下,$a 为 0,$b 为 rc1xamoblbqxul78czfsvub62fudzc)。
-
不错的变量命名...非常有意义且易于调试