用echo $sql="select * from $GLOBALS[admin_table] where nickname='$GLBALS[nickname]' and passwd ='".$GLOBALS[passwd]."'";
显示:select * from admin_table where nickname='' and passwd=''
用$_POST提交变量也一样出现"密码或登陆名错误"的提示,
请哪位大哥指点迷津.
显示:select * from admin_table where nickname='' and passwd=''
用$_POST提交变量也一样出现"密码或登陆名错误"的提示,
请哪位大哥指点迷津.
echo $sql="select * from $GLOBALS['admin_table'] where nickname='{$_POST['nickname']}' and passwd ='".$_POST['passwd']."'";
原来在linux环境下是好的,现在在WINDOWS环境下说密码错误
字符串中的变量替换
PHP 4 添加了一个新的机制以替换字符串中的变量。您现在可以访问字符串中的对象成员变量和多维数组元素。 如果您想这么做,您需要使用大括号将一个美元符号和变量名括起来,就像这样:{$...}。 要在字符串中嵌入对象成员变量,只要简单的写 "text {$obj->member} text"。而在 PHP 3 中,您得使用 "text ".$obj->member." text"。 这个改进可以使代码更易读,但这可能会破坏用 PHP 3 写的代码。但是您很容易修正它:在代码中查找字符串中的 {$,使用搜索替换工具将它替换为 \{$。
$sql="select * from $GLOBALS['admin_table'] where nickname='{$_POST['nickname']}' and passwd ='".$_POST['passwd']."'";
请指点迷津!!
第二种:$sql="select * from $GLOBALS['admin_table'] where nickname='$_POST['nickname']' and passwd ='".$_POST['passwd']."'";
第三种:$sql="select * from $GLOBALS['admin_table'] where nickname='GLOBALS['nickname']}' and passwd ='".GLOBALS['passwd']."'";
以上三种都提示“密码或登陆名错误,请重新登陆”的提示,这是在windows下,原来在linux下的好的,我确认用户名和密码是正确的!!!
function admin_login_mainmenu(){
print "
<br><br><br><h2 align=center>".$GLOBALS[web_title]."</h2>
<form method=post action=index.php>
<input type=hidden name=login_action value=login>
<table border=0 width=100% align=center>
<tr><td><hr width=450 size=1></td></tr>
<tr><td align=center>登录名:<input type=text name=nickname></td></tr>
<tr><td align=center>密 码:<input type=password name=passwd></td></tr>
<tr><td><hr width=450 size=1></td></tr>
<tr><td align=center><input type=submit value=登录></td></tr>
<tr height=16><td></td></tr>
<tr><td align=center><font color=blue size=2></font></td></tr>
</table>
</form>";}