整合codeigniter和wordpress授权

时间:2011-04-08 17:50:06

标签: php wordpress authentication codeigniter

是否有一种简单的方法可以在codeigniter和wordpress之间集成两个auth函数。我不知道该怎么做,或者最好的程序。它们都驻留在同一台服务器上。我正在寻找一些类似于youtube和google一起工作的方式。我不确定这是否可行。我刚刚用php应用程序管理了一些东西(不是codeigniter),但是如果我可以使用它,它也是理想的。它虽然不会与codeigniter一起实现。我甚至不确定它有多安全,但我可以将其粘贴在下面。 Codeigniter也在我的应用程序的数据库中存储变量。我可以访问它们,有没有办法可以使用这些变量?

require('../wp-config.php');

auth_redirect();

is_user_logged_in();

wp_get_current_user();
global $current_user;

global $mysql, $username;
global $auth;

$username = $current_user->user_login;

我刚刚添加了一个脚本,可以访问codeigniter中的数据库会话。不知道是否有任何好处,但我不知道如何暗示这一点或是否相关。

require_once("config.php");
$cisess_cookie = $_COOKIE['ci_session'];
$cisess_cookie = stripslashes($cisess_cookie);
$cisess_cookie = unserialize($cisess_cookie);
$cisess_session_id = $cisess_cookie['session_id'];

$cisess_connect = mysql_connect(MYSQL_HOSTNAME, MYSQL_USERNAME, MYSQL_PASSWORD);
if (!$cisess_connect) {
 die("<div class=\"error\">" . mysql_error() . "</div>");
}
$cisess_query = "SELECT user_data FROM ci_sessions WHERE session_id = '$cisess_session_id' LIMIT 1";

mysql_select_db(MYSQL_DATABASE, $cisess_connect);
$cisess_result = mysql_query($cisess_query, $cisess_connect);
if (!$cisess_result) {
 die("Invalid Query");
}
$cisess_row = mysql_fetch_assoc($cisess_result);
$cisess_data = unserialize($cisess_row['user_data']);
print_r($cisess_data);

1 个答案:

答案 0 :(得分:0)

您可以使用像IonAuth(http://codeigniter.com/wiki/Ion_Auth_-_Lightweight_Auth_System/)这样的库作为起点。自从我最后使用IonAuth以来已经有一段时间了,但我认为你可以通过编辑IonAuth随附的配置文件中的设置来实现这一点。