Joomla2.5のWebサイトが1つあります。
asp.netとc#によって作成された別のアプリケーションがあります。Joomla Webサイトに登録するユーザーは、同じユーザー名とパスワードでasp.netアプリケーションにログインできる必要があります。
ユーザーがasp.netアプリケーションにログインする場合、アプリケーションはJoomlaデータベース(ユーザーテーブル)に接続し、ユーザー名とパスワードを確認する必要があります。
どうすればこれができるのかわかりません。
質問する
1513 次
2 に答える
0
おそらく、この問題に対してCASソリューションを呼び出したCentral Authentication Serviceを使用できます。
Joomla には CAS 用のプラグインがいくつかあり、C# ASP .NET で CAS を使用する方法を説明する多くの記事が存在します。
この Joomla プラグインが役立つかもしれません。外部ログイン。
しかし、私の大きな問題は、Joomla サイトにログインすると、ASP.NET サイトに自動的にログインしたいのですが、この問題に対して何をすべきかわかりません。詳細については、Joomla ログイン セッションを 1 つの joomla Web サイトから 1 つの ASP.Net MVC Web サイトに共有する方法を参照してください。
于 2014-12-07T15:51:25.513 に答える
0
http://www.geekgumbo.com/2010/07/02/use-joomla-login-credentials-outside-of-joomla/
この Web サイトには、次を使用するログイン スクリプトがあります。
//Change these to your Joomla details
$dbhostname = 'localhost';
$dbusername = 'root';
$dbpassword = 'password';
$dbdatabase = 'joomla15';
// Get these from your form...
$username_for_check = 'admin';
$password_for_check = 'admin';
$joomla_user;
$joomla_pass;
$joomla_salt;
$mysqli = new mysqli($dbhostname,$dbusername,$dbpassword,$dbdatabase);
if ($result = $mysqli->query('SELECT j.username,j.password FROM joomla15.jos_users j WHERE j.username="'.$username_for_check.'" LIMIT 1;')) {
if ($result->num_rows == 0){
echo 'Username does not exist.';
}else{
while ($row = $result->fetch_object()) {
$joomla_user = $row->username;
$pass_array = explode(':',$row->password);
$joomla_pass = $pass_array[0];
$joomla_salt = $pass_array[1];
}
if($joomla_pass == md5($password_for_check.$joomla_salt)){
echo 'Username and password combination validated.';
}else{
echo 'Invalid password for username.';
}
}
} else {
echo 'LOGIN VALIDATION: MySQL Error - '.$mysqli->error;
}
$mysqli->close();
于 2012-11-15T13:29:32.217 に答える