2017-03-16 9 views
0

私のウェブサイトphpbbを使用したフォーラムがあります。 フォーラムのログインとパスワードを使ってユーザーを認証したいと考えています。ウェブページ上のphpbbログインの使用方法(フォーラム外)

<?php 
define('IN_PHPBB', true); 
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './'; 
$phpEx = substr(strrchr(__FILE__, '.'), 1); 
include($phpbb_root_path . 'common.' . $phpEx); 

// Start session management 
$user->session_begin(); 
$auth->acl($user->data); 
$user->setup(); 
?> 

しかし、それは動作しません:

は、いくつかの研究の後、私はこれを見つけました。理由は何ですか?

+0

ようこそStackOverflow。 「それはうまくいかない」とはどういう意味ですか?私はあなたが求めていることを理解していません。ユーザーが接続されているかどうかをテストし、識別しない場合はリダイレクトしますか? (どのバージョンを使用していますか?) –

+0

こんにちは@ alexandre-t、問題はcommon.phpファイルをインクルードするとすべてうまくいくが、$ user-> session_begin()を追加するとエラーが出るユーザー変数とsession_begin()関数が存在しません。 – Yvo

答えて

0

バージョン3.1または3.2を使用しているようです。 3.1以降、PhpbbはSymfonyフレームワークとMVCパターンを使用しています。新しいページを作成する場合は、新しいルートと新しいコントローラを作成する必要があります。

新しい拡張ページを作成する方法がわからない場合、あなたはこのtutorial

の表情は、新しい拡張を作成している必要がありますが、MVCパターンを理解していない場合は、困難である可能性があります。だから私はskeleton extensionを使用することをお勧めします。いくつかの簡単な設定ステップの後、ルートとコントローラが作成されます。

既存のページでのみログインをテストする場合は、イベントを使用する必要があります。この時点でグローバルセッション$userと許可$authは存在しません。ユーザオブジェクト(言語ファイルを含めるために)を使用する必要がある場合、またはパーミッションをチェックする必要がある場合は、代わりにcore.user_setupイベントを使用してください。

+0

ありがとう、私はそれをテストするつもりだ – Yvo

+0

これを使う方法は本当に分かりませんが、フォーラムで使われるように見えます。このフォーラム外のWebページからログインしたいと思っています。 – Yvo

+0

あなたは何を意味するのか本当に分かりません。私はこのフォーラムの外のウェブページから接続したいと思います。ログインフォームとログインコントローラを再コードしますか? –

関連する問題