ホームページ >php教程 >php手册 >PHP MYSQL 会員制ログインと権限判定実装コード

PHP MYSQL 会員制ログインと権限判定実装コード

WBOY
WBOYオリジナル
2016-06-13 12:04:59865ブラウズ

コードをコピー コードは次のとおりです。


error_reporting(0);
session_start(); ;
//データベース接続
$conn = mysql_connect('localhost', 'root', '');
mysql_select_db('chenkun', $conn); -8' );
//定数を定義します
define('ALL_PS', 'PHP');
function user_shell($uid, $shell, $m_id) {
$sql = "select * 管理者から where uid='$uid'";
$query = mysql_query($sql);
$row = mysql_fetch_array($query);
$shell = is_array($row) ? $shell == md5 ($row['username'] . $row['password'] . ALL_PS) : FALSE;
if ($shell) {
if ($row['m_id'] <= $ m_id) {
return $row;
}
echo "アクセス権限がありません";
exit ();
} else {
echo "アクセスする権限がありませんこのページ";
exit ();
}
}
function user_mktime($onlinetime) {
$new_time = mktime();
if (($new_time - $onlinetime) ) > '900' ) {
session_destroy();
echo "ログインタイムアウト"
終了 ()
} else {
$_SESSION['times'] = mktime( );
}
}
?>

PHP MYSQL メンバーシップ システムのログインには 3 つのページが含まれており、cogfig ページが含まれていますページ。 denglu ページはサブミット、セッション割り当てなどを担当し、denglu_link ページは許可判定のデモンストレーションを担当します。
この例では、test データベースと user_list テーブルがすでに存在します。このテーブルには、uid、m_id、username、およびpassword の 4 つのフィールドがあります。また、パスワード フィールドは md5 ("ユーザー パスワード".ALL_PS) の形式で md5 によって暗号化されています。つまり、ユーザーが入力したパスワードは定数を追加することによって暗号化されます。
config.php ページ:


コードをコピー コードは次のとおりです:

//セッションを開始します
session_start();
//データベース接続
$conn=mysql_connect('localhost','root','******'); test', $conn);
//定数を定義
define("ALL_PS","php100");
//権限の判定 function
function user_shell($uid,$shell); 🎜>$ sql="SELECT * FROM `user_list` WHERE `uid` = '$uid'";
$query=mysql_query($sql)
$exist=is_array($row=mysql_fetch_array($query) ));
$exist2=$exist?$shell==md5($row['ユーザー名'].$row['パスワード'].ALL_PS):FALSE;
if($exist2){
return $ row;
}else{
echo "このページにアクセスする権限がありません";
}
?> >

denglu.php ページ:



コードをコピー

コードは次のとおりです:

include("config.php "); if($_POST['submit']){ $username=str_replace(" ","",$_POST['username']) / /スペースを削除$sql= "SELECT * FROM `user_list` WHERE `username` = '$username'"

$query=mysql_query($sql); mysql_fetch_array($query)); // そのようなユーザーが存在するかどうかを判断します

$exist2=$exist?md5($_POST['password'].ALL_PS)==$row['password']:FALSE;//パスワードを決定します
if($exist2 ){
$_SESSION['uid']=$row['uid'] // セッション割り当て
$_SESSION['user_shell']=md5($row) ['ユーザー名'].$row[' パスワード'].ALL_PS);
echo "ログイン成功";
}else{
echo "ユーザー名が正しくありません"; >}
}
?>


ユーザー名:

パスワード:
確認コード:





$ arr=user_shell($_SESSION['uid'],$_SESSION['user_shell']);//上の 2 つの文で権限を決定できます

echo $arr['username' ]; ?> 許可内容