0

次のように、iframe を介して phpBB3 フォーラムを表示する HTML ページがあります。

      <iframe name="inlineframe" src="http://www.website.net/forums/index.php" frameborder="0" scrolling="auto" width="100%" height="1500" marginwidth="5" marginheight="5" ></iframe>.

フォーラムの上に HTML コードのメニュー バーを表示するためにこれを行っています。

別の HTML ページ (ホームページ) には、次のコードを使用してフォーラムに直接ログインできる入力フィールドを含むコンテナーがあります。

      <form action="http://www.website.net/login.php?mode=login" method="post">
        <label for="username">Username</label><input type="text" name="username" required>
        <label for="password">Password</label><input type="password" name="password" required>
        <input type="submit" name="login" value="Login" class="loginbtn"/><a href="http://www.website.net/register.php">Register</a>
      </form>

そのため、ユーザーがログイン情報をボックスに入力して [送信] をクリックすると、ホームページから直接フォーラムに移動し、自動的にサインインします。

送信ボタンを phpBB フォーラム (メニュー バーがない) に直接リンクすると正常に動作しますが、(メニュー バーを使用して) 埋め込まれている場合は動作しません。

埋め込まれた PHP リンク (www.website.net/register.php) と一緒に使用すると、送信されたフィールドに何も入力しなくても、ブラウザーは単にログイン ページに移動します。

4

1 に答える 1

2

最善の方法は、フォーラムのテーマのヘッダー テンプレートを変更し、メニュー バーを追加することです。例: http://openfantasy.org/forum/

なんらかの理由でそれを避けたい場合は、ログイン後に必要なページへのリダイレクトを phpBB に追加することをお勧めします。

root\ucp.php (phpBB 3.0.11) の 76 ~ 81 行を見てください。

if ($user->data['is_registered'])
{
    redirect(append_sid("{$phpbb_root_path}index.$phpEx"));
}

login_box(request_var('redirect', "index.$phpEx"));

それを IFrame のあるページの URL に変更すれば、うまくいくはずです。

于 2013-04-05T01:37:46.197 に答える