加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

在Laravel中加载phpBB代码冲突

发布时间:2020-12-14 19:48:42 所属栏目:大数据 来源:网络整理
导读:我试图从我的Laravel应用程序访问phpBB中的一些函数,这是为了在我的主站点上发生注册时添加用户和自动登录等操作. PhpBB安装在/ public / forums下,我更新了.htaccess以允许它.我能够访问并使用它就好了. 我有一个最初为codeigniter构建的帮助器,但应该转换
我试图从我的Laravel应用程序访问phpBB中的一些函数,这是为了在我的主站点上发生注册时添加用户和自动登录等操作.

PhpBB安装在/ public / forums下,我更新了.htaccess以允许它.我能够访问并使用它就好了.

我有一个最初为codeigniter构建的帮助器,但应该转换到laravel世界.我将它作为帮助程序加载,将其置于应用程序下,使用它加载它

use AppHelpersphpBBHelper;

我这样访问这些功能

$ph = new phpBBHelper();
   $ph->addPhpbb3User('dave','password','dave@dave.com');

在我的助手的顶部,我有这个构造函数

public function __construct() {

    // Set the variables scope
    global $phpbb_root_path,$phpEx,$cache,$user,$db,$config,$template,$table_prefix;

    define('IN_PHPBB',TRUE);
    define('FORUM_ROOT_PATH','forum/');

    $phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : FORUM_ROOT_PATH;
    $phpEx = substr(strrchr(__FILE__,'.'),1);
    // Include needed files
    include($phpbb_root_path . 'common.' . $phpEx);

    // Initialize phpBB user session
    $user->session_begin();
    $auth->acl($user->data);
    $user->setup();

    // Save user data into $_user variable
    $this->_user = $user;   
}

当我执行代码时,我收到服务器500错误

PHP Fatal error:  Call to a member function getScriptName() on null in
/home/ubuntu/workspace/public/forum/phpbb/session.php on line 50

这是这条线

$script_name = $request->escape($symfony_request->getScriptName(),true);

我发现了一个关于堆栈溢出的帖子,它正好引用了我的问题,但该问题的解决方案从未发布过

Laravel conflicting

在该线程中,有人建议因为phpBB和Laravel都使用composer,所以在加载类时会导致冲突.我不确定这是不是真的.

但是当我调用$user-> session_begin();时,Laravel肯定会影响phpBB.

我建议不要重新发明轮子并使用已编码的扩展名,如 lara-auth-bridge.注册只是在右表中插入正确的行,特别是不熟悉phpBB3,但是你可以看到新帐户后数据库中的更改创建.

编辑:您可以在try {} catch {}块中包围有问题的代码,以防错误对于注册本身而言不是致命的,因此服务器不会以500结尾.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读