PHP登录功能不起作用

时间:2012-02-06 19:55:42

标签: php login

我正在使用下面的代码,但问题是当我点击提交页面时只刷新而没有登录功能处理,我没有收到任何错误消息。

 <?

 include("connection.php");
 include("suction.php");//function file

 session_start(); 

  if(@$_POST['login'] == 'Login'){
    $log = login($_POST['username'], $_POST['password']);
    if($log == true){
        //login good
        header("Location: home.php");
    }elseif($log == false){
        //username/password invalid
        die("error");
    }
    }


   ?>


   <form action="login.php" method="post" enctype="multipart/form-data">

  Username:<input name="username" type="text"/> <br />
  Password:<input name="password" type="password"/> 
  <input name="Login" value="Login" type="submit"/>

  </form>

4 个答案:

答案 0 :(得分:2)

您应该检查$_POST['Login'] - 请注意大写字母L.理想情况下,您的表单应更改为在名称中使用小写l,但无论哪种方式,您都需要更改其中一个。< / p>

附注:在设置exit标题后,您应该始终die()Location,除非是非常具体的情况。

答案 1 :(得分:2)

您正在检查$_POST['login']是否存在。但是没有这样的领域。在表单中,您有一个名为Login的字段 - 而不是login

如果您没有使用@前缀$_POST['login']来抑制错误消息,那么PHP会通知您。

只需将提交按钮的name更改为login

答案 2 :(得分:1)

    enctype="multipart/form-data"

这是做什么的?我认为你应该删除它。 。

答案 3 :(得分:0)

我会尝试使用:

if(isset($_POST['username']) && isset($_POST['password']))

在第一个论点中。如果这不起作用,请提供更多信息;就像你的login()功能一样。