用echo $sql="select * from $GLOBALS[admin_table] where nickname='$GLBALS[nickname]' and passwd ='".$GLOBALS[passwd]."'";
显示:select * from admin_table where nickname='' and passwd=''
用$_POST提交变量也一样出现"密码或登陆名错误"的提示,
请哪位大哥指点迷津.

解决方案 »

  1.   

    你的表单是怎么提交的?不会是GET方式吧?
    echo $sql="select * from $GLOBALS['admin_table'] where nickname='{$_POST['nickname']}' and passwd ='".$_POST['passwd']."'";
      

  2.   

    不行呀,为什么用{}呀!
    原来在linux环境下是好的,现在在WINDOWS环境下说密码错误
      

  3.   

    哇....稻草人出现了...嘿嘿..三星了哦...关于{}手册中如下解释
    字符串中的变量替换
    PHP 4 添加了一个新的机制以替换字符串中的变量。您现在可以访问字符串中的对象成员变量和多维数组元素。 如果您想这么做,您需要使用大括号将一个美元符号和变量名括起来,就像这样:{$...}。 要在字符串中嵌入对象成员变量,只要简单的写 "text {$obj->member} text"。而在 PHP 3 中,您得使用 "text ".$obj->member." text"。 这个改进可以使代码更易读,但这可能会破坏用 PHP 3 写的代码。但是您很容易修正它:在代码中查找字符串中的 {$,使用搜索替换工具将它替换为 \{$。 
      

  4.   

    楼上的兄弟解释的很好,但不管用呀,我现在只想知道在windows环境下,下面的代码哪有问题:
    $sql="select * from $GLOBALS['admin_table'] where nickname='{$_POST['nickname']}' and passwd ='".$_POST['passwd']."'";
    请指点迷津!!
      

  5.   

    第一种:$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下的好的,我确认用户名和密码是正确的!!!
      

  6.   

    是不是表单没有设置method属性?
      

  7.   

    hailang6,你帮我看看,以下是表单模块的代码:
    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>";}
      

  8.   

    表单我想应该没错的,关键在于SQL语句