首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IPB -在IPB根之外访问成员数据PHP

IPB -在IPB根之外访问成员数据PHP
EN

Stack Overflow用户
提问于 2015-03-14 19:03:18
回答 1查看 604关注 0票数 1

我有IPB,我有一个PHP应用程序,它在论坛根目录之外,也在另一个子域上。

在应用程序中,我需要访问成员数据,例如。发帖计数,电子邮件等。

我有最新的IPB版本和PHP5.6

我搜索了很多解决方案,最后找到了一个:Accessing IPB Classes Externally From Main Website

然而,它根本不起作用。没有错误,只是重定向到主论坛网址。

有谁有过IPB类和API的经验吗?有人能帮我达到目标吗。

解决方案可能只是一行代码。

编辑:我在附近找到工作,看看下面的答案。

然而,我仍然对“更好”的解决方案感兴趣。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-14 21:09:49

经过一些研究后,我配置了IPB重定向,因为板url与当前的URL/子域不匹配。(我的案子)

所以..。有解决办法,不太好,但至少有效,只有一行解决方案:

代码语言:javascript
复制
<?PHP
$_SERVER['HTTP_HOST_R'] = $_SERVER['HTTP_HOST']; // Keep original info in another index.
$_SERVER['HTTP_HOST'] = "www.your-ipb-forum.com"; // Work-around
$forumPath = '../forum'; //FORUM FOLDER
define( 'IPS_ENFORCE_ACCESS', TRUE ); // Important so it does not redirect to forums
define( 'IPB_THIS_SCRIPT', 'public' );

require_once( $forumPath.'/initdata.php' );
require_once( IPS_ROOT_PATH . 'sources/base/ipsRegistry.php' );
require_once( IPS_ROOT_PATH . 'sources/base/ipsController.php' );

$ipbRegistry    = ipsRegistry::instance();
$ipbRegistry->init();
// Init done

$member = IPSMember::load($memberName, 'all', 'username');
print_r($member); // For demo purposes only

第三条是我们在IPB上作弊的方法。

第二行是“将”$_SERVER‘’HTTP_HOST‘数据移动到$_SERVER’‘HTTP_HOST_R’,因此如果应用程序中需要当前(真实) URL,则可以使用此变量,因为HTTP_HOST 1被更改。(需要解决办法)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29052987

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档