php100視頻裡的一個會員登入系統執行個體,雖然很小,但裡面的一些準系統實現還是不錯的,<br />分為三個檔案,如下:<br />config.php</p><p><?php<br />session_start();</p><p> $conn=mysql_connect('localhost','root','a123456') or die("串連錯誤");<br /> mysql_select_db("xuexi",$conn) or die("資料庫錯誤");<br /> mysql_query("set names'utf8'");<br /> define(ALL_PS,"ljzhen");//為ljzhen在做加密,保證使用者的安全性。</p><p> function user_shell($uid,$shell,$yid){ //這裡定義了變數<br /> $sql="select * from login_user where `uid`='$uid'";<br /> $query=mysql_query($sql);<br /> $us=is_array($row=mysql_fetch_array($query));<br /> $shell=$us ? $shell=md5($row[username].$row[userpass].ALL_PS) :FALSE;<br /> if($shell){<br /> if($row[yid]<=$yid){ //判斷使用者權限,條件滿足時,即可訪問該頁面<br /> return $row;<br /> }else{<br /> echo "你的許可權不足,無法訪問該那面";<br /> echo "<a href="login.php" mce_href="login.php">返回【查看許可權】重新登陸</a>";<br /> exit();<br /> }</p><p> }else{<br /> echo "你無許可權訪問該頁面!";<br /> echo "<a href="login.php" mce_href="login.php">返回重新登陸</a>";<br /> exit();<br /> }<br /> }</p><p> function user_mktime($onlinetime){<br /> $new_time=mktime();<br /> echo $new_time-$onlinetime; //目前時間減去使用者登陸時間<br /> if($new_time-$onlinetime>'100'){ //判斷登陸時間超過我們制定時間後,自動踢出!<br /> echo "登陸逾時";<br /> session_destroy();//清除session中的值<br /> exit();<br /> }else{<br /> $_SESSION[times]=mktime(); //及時更新時間,即使用者有操作頁面時,重新計算時間<br /> }<br /> }<br />?></p><p>login.php</p><p><?php<br /> include("config.php");<br />@header("content-type:text/html; charset=UTF-8");<br />//<br />//echo md5("admin".ALL_PS);//採用admin和前面的LJZHEN同時加密<br />if($_POST[submit]){<br /> $username=str_replace(" ","",$_POST[username]);<br /> $sql="select * from login_user where `username`='$username'";<br /> $query=mysql_query($sql);<br /> $us=is_array($row=mysql_fetch_array($query));//這裡判斷使用者名稱是否為真<br /> $ps= $us ? md5($_POST[password].ALL_PS)==$row[userpass] : FALSE;//這裡判斷使用者名稱和密碼是否為真<br /> if($ps){ //這裡對$ps進行判斷<br /> $_SESSION[uid]=$row[uid]; //擷取ID存入SESSION<br /> $_SESSION[user_shell]=md5($row[username].$row[userpass].ALL_PS); //這裡在對使用者和密碼進一層加密<br /> $_SESSION[times]=mktime();<br /> echo "<a href="login_sys.php" mce_href="login_sys.php">登陸成功,點擊【進入】操作</a>";<br /> }else{<br /> echo "使用者名稱或密碼錯誤!";<br /> session_destroy();<br /> }</p><p>}<br />?><br /><?php<br />//echo $_SESSION[uid];<br />//echo $_SESSION[uname];<br />?><br /> <form action="" method="post""><br /> 使用者: <input type="text" name="username" size="40" maxlength="40"/><br /> <br/><br /> 密碼: <input type="text" name="password" size="40" maxlength="40"/><br /> <br/></p><p> <input type="submit" name="submit" value="登陸" style="width:50px; height:25px;"/><br /> </form></p><p>login_sys.php</p><p><?php<br />include("config.php");<br />@header("content-type:text/html; charset=UTF-8");<br /> //$_SESSION[uid];<br /> //$_SESSION[user_shell];</p><p> $arr=user_shell($_SESSION[uid],$_SESSION[user_shell],1); //擷取登陸使用者資訊--2是表示使用者的使用權限設定的<br /> //echo $arr[username]."<br>";</p><p> user_mktime($_SESSION[times]); //使用user_mktime類方法</p><p> if($_GET[out]){ //登出目前使用者<br /> unset($_SESSION[uid]);<br /> unset($_SESSION[user_shell]);<br /> echo"<mce:script type="text/javascript"><!--<br />location.href='login_sys.php'<br />// --></mce:script>";//重新整理當前頁面<br /> }<br /> echo "<a href="login_sys.php?out=out" mce_href="login_sys.php?out=out">退出</a>";<br />?><br />