ホームページ  >  記事  >  バックエンド開発  >  パスなしの DISCUZ ログインの概要、ページ 1/2_PHP チュートリアル

パスなしの DISCUZ ログインの概要、ページ 1/2_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 15:49:49732ブラウズ

ログインするためのパスのない DISCUZ の紹介
DISCUZ は中国で最も一般的に使用されているフォーラムですが、誰でも接続できるパスがありますが、ユーザーの実際の統合は依然として非常に不十分です。登録と管理に役立たず、データベースの 2 番目の無駄です。
最近、DISCUZも使用するプロジェクトに取り組んだので、DISCUZのログインを勉強し、基本的に同期ログインを完了しました。興味があれば調べてみてください。
これ以上はナンセンスです。独自のシステムを作成する場合は、DISCUZ 公開ファイルを直接使用して、include/common.inc.php を直接参照することができます。このファイルを参照する限り、$discuz_uid は自分のものになります。ユーザー ID、$discuz_user はユーザー名です。独自のパブリック ファイルを使用する場合は、global.func.php に 2 つの関数
Dsetcookie と、authcode を抽出する必要があります。 1 つ目は DISCUZ の可逆暗号化関数、3 つ目はクリア COOKIE 関数を独自の FUNC.PHP ファイルに置きました。さて
それでは、COOKIE
function lgoin($array) の作成と識別方法を書き始めましょう
$username = $array['username'];
$password = $array['password']; = "SELECT `uid`,`password`,`secques` FROM `cdb_members` WHERE
`username`='$username' and `password`=md5('$password')"; this -> _db ->
}catch (Exception $e){
exit("クエリエラー、エラーメッセージ: ".$e->getMessage()); }
$row = $this -> _db -> //ログインしているユーザー名とパスワードが正しいかどうかを確認します
if($row){
dsetcookie('sid','',-) 2423234234 ); // ログアウト sid
$secques = $row['uid'];
$formPassword = $row['password']; , authcode("$formPasswordt$secquest$uid", 'ENCODE','123'), '0');
}else{
}
}

これはログイン関数です。ナンセンス これ以上は話さないで、重要な部分について直接話しましょう。クエリを実行して情報を取得した後、(ユーザー名とパスワードが正しければ) 3 つの情報、UID、PASSWORD、および SECQUES が必要になります。 DISCUZ が COOKIE を確立するために使用します。1 つ目はユーザー ID、2 つ目は暗号化されたパスワード、3 つ目は質問に対する暗号化された回答です (DISCUZ は質問を促すために使用する必要があります)。と答えますが、ログインする必要はありません。必要なので、ここで直接彼に確認しました。 dsetcookie('auth', authcode("$formPasswordt$secquest$uid", 'ENCODE','123'), '0');
この文は、言うまでもなく、ユーザーの COOKIE を確立するためのものです。この文「123」に注目してください。これは、DISCUZ と同じである必要があるため、1 つは global.func.php です。 、もう 1 つは authcode 関数を自分でコピーし、authcode を使用する場合です。この時点でフォーラムにログインできるはずです。ログインできない場合は、以下を参照してください。



http://www.bkjia.com/PHPjc/319466.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/319466.html

技術記事

パスなしでログインする DISCUZ の内容の紹介 DISCUZ は中国で最も一般的に使用されているフォーラムですが、ユーザーの実際の統合は依然として非常に不十分です。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。