在用户首次登录时重置密码

时间:2014-04-29 16:33:05

标签: php

<?php
include("config.php");

session_start();
if($_SERVER["REQUEST_METHOD"] == "POST")
{
  // username and password sent from Form
  $myusername = addslashes($_POST['username']);
  $mypassword = addslashes($_POST['password']);

  $sql = 'SELECT user_id FROM users WHERE username = "'.$myusername.'" and password = "'.$mypassword.'" ';

  $result = mysql_query($sql);
  $row = mysql_fetch_array($result);
  $active = $row['active'];
  $count = mysql_num_rows($result);

  // If result matched $myusername and $mypassword, table row must be 1 row
  if ($count==1)
  {
    $session_id = $row['user_id'];
    session_register("session_id");
    $_SESSION['login_user'] = $session_id;
    $login_session = $_SESSION['login_user'];
    header("location:resetpwd.php?user_session=".$login_session."");
  }
  else
  { echo "invalid username/password"; }  
}
?>

<html>
 <body>

   <form action='' method='post' accept-charset='UTF-8'>  
      <table class="login">
       <tr><td><label>Username </label></td>
           <td><input type="text" name="username" maxlength="20" size="30px"/></td>
       </tr>
       <tr><td><label>Password </label></td>
           <td><input type="password" name="password"  maxlength="50" size="30px"/></td>
       </tr>
      </table>
      <div><input type="submit" class="loginbutton" style="cursor:pointer;" value=""/></div>  
   </form>
  </body>
 </html>

以上代码是登录页面。当用户注册时,他/她将获得自己生成的密码给他/她的邮件。现在用户将使用该用户名和密码从电子邮件登录,我需要在第一次登录时将页面重定向到更改密码,之后它应该重定向到welcome.php

有人可以建议我吗?非常感谢

1 个答案:

答案 0 :(得分:0)

有一个数据库列说&#34;首次登录&#34;。或者,您可以进行最近的登录&#34;,如果它为空,则他们之前从未登录并需要设置密码。

或者只做正常人所做的事情并且拥有密码&#34;是注册表上的一个字段。