2010-11-20 38 views
1

私は自分のウェブサイトでフォーラムを利用しようとしています。私のサイトに登録していない人はフォーラムだけに登録することができます。しかし、私のサイトにアカウントを持っている人は自動的にフォーラムにログインする必要があります。それはどうやって...?phpBBのログインをバイパスしたり、無効にすることはできますか?

+1

あなたの質問には答えられませんが、あなたが探しているものは「シングルサインオン」と呼ばれています。 AFAIK、phpBBのためのSSOソリューションがあります - おそらくGoogleingの価値があります... –

+0

あなたはそれについてもっと教えてください... ??? – Kailash

+0

@sandeepan:ursについてのヒントを持っています。 ... – Kailash

答えて

2

phpbbのログインを無効にする必要はありません。必要に応じて(ユーザーがあなたのサイトにログインしたとき)ログイン機能を呼び出すだけです。このよう

: -

<?php 
/* Example 1: Logging in place in your pages 

*/ 

if($_SESSION['userLoggedinMySite'] && !$_SESSION['userLoggedintoForum']) 
{ 
     $username = $_SESSION['username']; 
     $user_password = $_SESSION['user_password']; 


     //Write code to login user to your system here 
     //Write code to login user to phpbb here (follow code of phpbb's ucp.php) 


     //Setting forum session login flag to avoid repeated login attempts 
     $_SESSION['userLoggedintoForum'] = true; 

} 
?> 

は、phpBBのインストールのルートにあるファイルucp.phpを確認してください。このファイルの中には、loginregisterなどのすべてのものがあります。通常のログイン/登録の場合は、Practical External loginで与えられているように、ログインフォームのポストを介して実行されるように見えます。インストールした状態で、通常のフォームの場合はコードロジック(渡された変数を表示)で試してみてくださいログインして、phpbbログイン機能を呼び出すために必要なデータを確認してから、私が書いたロジックに変更してください。

+0

@sandeepan:あなたのサイトのログインページは何ですか? – Kailash

+0

@sandeepan:ursについてのヒントはありますが、私はもう少し精巧に答えています.... – Kailash

+0

@Kailashは、ユーザがあなたのシステムにログインしているかどうかを確認するためのコードに条件を追加しましたが、フォーラムには入りません。その場合、上記のコードはユーザをphpbbフォーラムにログインさせます。サイトにphpbbを新しくインストールした場合、古いユーザーはフォーラムのユーザーデータベースには存在しません。自分のユーザーテーブルをお持ちですか?その場合、データベースからphpbbデータベースにユーザーをインポートする必要があります。 –

関連する問題