HTML页面中的登录功能

时间:2014-11-13 08:31:27

标签: php html

我创建了一个HTML页面,它从用户那里获取用户ID和密码,然后通过数据库检查其有效性。直到现在我成功登录后才将他们引导到另一个页面。但现在我想在登录后更新同一页面。就像www.facebook.com;当我们没有登录时询问用户ID和密码,但如果我们登录,我们的个人资料内容会显示在同一页面上,即facebook.com。我在做什么;将它指向页面" login.php"当然,您无需登录即可访问。

例如,有一个页面" movies.com"允许用户在登录后观看一些电影;在我将他们引导到另一个页面之前说" successful_login.com"他们登录后这是一个有趣的方法,但是正在为我的大学任务工作。

PS。我只是一个菜鸟,对不起,如果我问了一些有趣的话。

<?php
if(mysql_connect("localhost","root","")==false)
{
  die ("Connection Failed");
}
mysql_select_db("data");
if($_POST) 
{
  $id=$_POST["email"];
  $pwd=$_POST["password"];
  $pwd=hash( 'sha256', $pwd);
  $sql=mysql_query("SELECT* FROM admin_data WHERE id='$id' AND pass='$pwd'");
  if($sql)
  {
   header("Location: login.php");
 }
}
?>
<!DOCTYPE html>
<html lang='en'>
<head>
  <meta charset="UTF-8" /> 
  <title>
    HTML Document Structure
  </title>
  <link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>

  <form method="POST">
    <h1>Welcome</h1>
    <div class="inset">
      <p>
        <label for="email">Login</label>
        <input type="text" name="email" id="email">
      </p>
      <p>
        <label for="password">PASSWORD</label>
        <input type="password" name="password" id="password">
      </p>
    </div>
    <p class="p-container">
      <span>Forgot password ?</span>
      <input type="submit" name="Login" id="Login" value="Log in">
    </p>
  </form>

</body>
</html>

1 个答案:

答案 0 :(得分:1)

要使用session变量,您需要在顶部启动session

session_start();

现在将email值存储在此处的会话中。

if(mysql_num_rows()>0)//It was originally if($sql)but I am using mysql_num_rows
//The reason for saving the value in the session here is this. 
First you want to make sure that user have valid credential to log in.
  {
$_SESSION['email']=$id
   header("Location: login.php");
 }

在您的表单中,您可以执行以下操作

session_start(); //在顶部开始会话,以便您可以使用会话变量。

然后只需使用if else语句。

if($_SESSION['email']==TRUE)
{
$email=$_SESSION['email'];
//Now you can run the query by using $email to fetch the record of the user.
}
else 
{
//Show them a form or redirect them to another page.
}

注意mysql已被弃用,很快就会被删除。使用mysqliP.D.O

相关问题