解决方案 »

  1.   

    if($_GET['action']="logout")你这句是在赋值,少一个=
    而且,你的表单是post提交,应该用$_POST获取action,还有就是你的表单中没有action
      

  2.   


    我表单中有action啊
     echo'<a href="login.php?action=logout">注销</a> 登录<br>'; 
    还有,不是那个等于号的问题,加多一个等于号反而让我的action无效了!
      

  3.   

    if($_GET['action']="logout")
    应为
    if($_GET['action']=="logout")
    = 为赋值,流程全变了<form  name="LoginForm" method="POST" action="login.php" onSubmit="return InputCheck(this)">
    你的表单并没有名为 action 的url 参数,那么对 $_GET['action'] 赋值还嫩对吗?
      

  4.   

    不是很懂你的意思,能再说明白一些么?....我的action是针对注销的那个form,这个form我是要submit我输入的内容先进行js部分的验证之后再跳转到action所指示的页面,login.php就是我的url啊
      

  5.   

    还要怎么明白?
    login.php文件:
    <?php
      header("Content-type:text/html;charset=utf8");
      session_start();
      
     //注销登录
    if($_GET['action']="logout") 因为这里是赋值,所以套红的部分总是要执行的
      {
       unset($_SESSION['regname']);
      unset($_SESSION['regpwd']);
       //Session.Clear();
        echo'注销登录成功!点击此处<a href="home.php">登录</a>';
      // exit("<script type='text/javascript'>location.href='home.html';</script>");

      }  //登录
      
      

  6.   

    两位都有对有错。楼上回答的$_GET['action']="logout",这里的确应该再加一个=号,然后楼主还有一个错误
     <?php
                 echo $_SESSION['regname'];
                 echo'<a href="login.php?action=logout">注销</a> 登录<br>'; 
                 }
    这里的echo 后面没有空格啊,亲。一个等于号就是赋值,你确实传过来$_GET['action']了,但是你又自己把它覆盖成为"logout“了。所以不管你传不传action,你的$_GET['action']="logout"都会成立。也就是说,注销一定会执行啦、。登陆成功后echo'<a href="login.php?action=logout">注销</a> 登录<br>';没有执行成功、
      

  7.   

    然后我又发现echo'<a href="login.php?action=logout">注销</a> 登录<br>';这句代码的引号不对啊,应该是echo "<a href='login.php?action=logout'>注销</a> 登录<br>";,不知道回答的对你有没有用。
      

  8.   


    我表单中有action啊
     echo'<a href="login.php?action=logout">注销</a> 登录<br>'; 
    还有,不是那个等于号的问题,加多一个等于号反而让我的action无效了!你这里是两个form,第二个form里面的action怎么可能在第一个里面用?
    还有你的method="POST",而你的js里面没有修改action ,所以action="login.php" 时没有action参数,从而导致if($_GET['action']=="logout")这句出错,因为$_GET['action']不存在,所以估计因此你用了if($_GET['action']="logout")结果更错了
      

  9.   

    逻辑区分开来,先判断是不是POST提交,是则不需要 运行下面代码
    //注销登录
    if($_GET['action']=="logout")
      {
       unset($_SESSION['regname']);
      unset($_SESSION['regpwd']);
       //Session.Clear();
        echo'注销登录成功!点击此处<a href="home.php">登录</a>';
      // exit("<script type='text/javascript'>location.href='home.html';</script>");
      }
    不是POST提交,那么就运行上面代码。这样有条理些。