私は(同じドメイン上)非MWページではMediaWikiのログインを使用する必要が使用MediaWikiの私はクッキーを見て(同じドメイン内?)非mediawikiのページでログイン
が、mw_UserName私がログアウトするとクッキーが残ります(また、ログインした後はmw_Logoutクッキーが残っています)。そして、私はmw_sessionクッキーを使用する手がかりがありませんが、私が探しているものと推測します。
私は(同じドメイン上)非MWページではMediaWikiのログインを使用する必要が使用MediaWikiの私はクッキーを見て(同じドメイン内?)非mediawikiのページでログイン
が、mw_UserName私がログアウトするとクッキーが残ります(また、ログインした後はmw_Logoutクッキーが残っています)。そして、私はmw_sessionクッキーを使用する手がかりがありませんが、私が探しているものと推測します。
私はこのようにそれを解決しました。そこでMediaWikiがどのようにしたのかを見て、WebStart.phpがUser.phpに必要なvarを定義しているのを見ました。
これは動作しませんが、おそらくmediawikiはPHPセッションを使用しています。次に、セッション名を設定するだけでよいでしょう:
session_name('mw_session');
session_start();
echo session_id(), '<pre>', var_dump($_SESSION);
die();
最初の洞察です。 (私はファイルベースセッションを使っていたいくつかの古いメディアウィキのバージョンを覚えています)。私が見
$preIP = dirname(__FILE__);
require_once("$preIP/includes/WebStart.php");
require_once("$preIP/includes/User.php");
$t = new User();
$user = $t->newFromSession();
$user->load();
/含む/のでuser.phpので、私はそれを含めることを試みたが、それはエラーを与えた:
0の項目を含む配列を返します。 – drnessie
mediawikiセッションがまだアクティブであることを確認してください。そして私はsession_idの出力を追加しました。クッキーと同じ値を持つ必要があります。そうでなければ、引き継がれません。 – hakre
私は今、2つのmw_sessionクッキーを持っています。助けて! (はい、セッションはまだアクティブでした) – drnessie