标签: phpbb3

将Zend2应用程序与PHPBB3身份验证集成的"正确"方法是什么?

好的,这有点复杂,所以请耐心等待.

我现在正在运行一个PHPBB论坛,我的目标是使用其用户管理和身份验证功能创建一个Zend2 PHP应用程序,而不是构建一个全新的授权组件,而这又需要再次与论坛同步.

以下组件将在实时环境中使用: PHPBB3,Zend Framework 2(最新稳定版),Apache,PHP 5.6 +,MySQL在没有root访问权限的虚拟Linux服务器上运行.

我的开发环境(运行下面的所有示例)是: PHPBB3,Zend Framework 2(最新稳定版),XAMPP 3.2.2,启用了xdebug的PHP 5.6.21,在Windows 8上运行的MariaDB.

每当要求PHPBB的集成时,以下行不可避免地出现在搜索中:

global $phpbb_root_path, $phpEx, $user, $db, $config, $cache, $template;
define('IN_PHPBB', true);
$phpbb_root_path = './forum/phpBB3/'; // this path is from an external example
$phpEx = substr(strrchr(__FILE__, '.'), 1);
$phpBBFile = $phpbb_root_path . 'common.' . $phpEx;
include($phpBBFile);

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();
Run Code Online (Sandbox Code Playgroud)

我已经取得了成功,包括那些没有使用框架或直接通过ajax调用php的人,但现在 - 使用Zend 2 Framework - 在包含本机PHPBB3代码时会出现多个问题.

我不得不说我不是一个经验丰富的PHP程序员,而且我现在只学习了几天Zend.

我的第一次尝试集中于在Zends中调用Zend应用程序之前集成上面的代码index.php:

....
// Setup autoloading
require 'init_autoloader.php';

global $phpbb_root_path, $phpEx, $user, $db, …
Run Code Online (Sandbox Code Playgroud)

php authentication phpbb3 zend-framework2 php-5.6

12
推荐指数
1
解决办法
385
查看次数

MathJaX和phpbb 3.1版

这是问题所在.我想将MathJaX集成到我的phpbb 3.1安装版本中,但显然将mathjax的java脚本放在overall_footer中似乎没有办法.相反,我得到一条错误消息,说明有关LeXer或类似的事情.

在之前的3.0版中,我在overall_footer.html文档中实现MathJaX没有任何问题.我确实在phpbb.com上询问了支持但是说这不是phpbb问题.

那么,我需要将脚本放在论坛上以便获得MathJaX支持?我不能放在标题中,因为在这种情况下论坛不会加载.哦,忘了提一下,如果我把它作为BBcode实现它运行没有问题,但这不是我想要的解决方案.

phpbb3 mathjax

9
推荐指数
0
解决办法
101
查看次数

针对PhPbb数据库验证用户

最近我开始实现一个解决方案,它将使用PhPbb数据库进行表单授权,我使用了以下类中的类:

PhPbb C#认证端口

所以我在'ValidateUser'函数中使用这个类编写了一个成员资格提供者:

public override bool ValidateUser(string username, string password)
    {
        ForumsDataContext db = Root.ForumsDataContext;
        PhPbbCryptoServiceProvider phpbbCrypt = new PhPbbCryptoServiceProvider();
        string remoteHash = db.Users.Where(u => u.UserName == username).FirstOrDefault().UserPassword;
        if (String.IsNullOrEmpty(remoteHash))
            return false;
        return phpbbCrypt.phpbbCheckHash(password, remoteHash);
    }
Run Code Online (Sandbox Code Playgroud)

然而,这总是返回false,因为'phpbbCrypt.phpbbCheckHash'返回false并且我不太了解PhPbb以确定散列不匹配的原因.

任何sugestions?

c# phpbb phpbb3 asp.net-mvc-3

8
推荐指数
1
解决办法
1762
查看次数

phpBB远程文件上传

我希望能够通过phpbb将远程文件上传到我的服务器,而无需先将文件下载到我的电脑上.怎么能实现这一目标?

我有一些简单的代码,我已经测试过,它完成了这项工作,但是我可以把它放在哪里,我需要在phpBB中修改什么?

<form method="post">
    <input name="url" size="50"/>
    <input name="submit" type="submit"/>
</form>

<?php
// maximum execution time in seconds
set_time_limit(24 * 60 * 60);

if (!isset($_POST['submit'])) die();

// folder to save downloaded files to. must end with slash
$destination_folder = 'mydownloads/';

$url = $_POST['url'];
$newfname = $destination_folder . basename($url);

//Open remote file
$file = fopen($url, "rb");
if ($file) {
    //Write to local file
    $newf = fopen($newfname, "wb");
    if ($newf) {
        while (!feof($file)) {
            fwrite($newf, fread($file, 1024 * 8), 1024 * 8); …
Run Code Online (Sandbox Code Playgroud)

php file-upload phpbb3 remote-server

8
推荐指数
1
解决办法
1871
查看次数

解析PHPBB3的BB代码

希望使用PHPBB3的函数解析PHP中的BB代码.我到目前为止:

<?php
    include_once("../../forum/includes/functions_content.php");

    $text = "[b]bold text here[/b] not bold here";
    $uid = $bitfield = $options = '';

    echo("parsing");
    echo generate_text_for_storage($text, $uid, $bitfield, $options, true, true, true);
    echo("finished");
?>
Run Code Online (Sandbox Code Playgroud)

然而它回声parsing但在此之后不会继续.我期待输出符合以下几点:

<b>bold text here</b> not bold here
Run Code Online (Sandbox Code Playgroud)

任何帮助非常感谢!

编辑

没有答案仍然有效.我正在寻找一个独立的 php页面,它使用PHPBB3的BBCode解析器将BB代码字符串转换为HTML字符串.

php bbcode phpbb3

8
推荐指数
1
解决办法
2553
查看次数

在Laravel中加载phpBB代码冲突

我试图从我的Laravel应用程序访问phpBB中的一些函数,这是为了在我的主站点和自动登录发生注册时添加用户等操作.

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

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

use App\Helpers\phpBBHelper;
Run Code Online (Sandbox Code Playgroud)

我这样访问这些功能

   $ph = new phpBBHelper();
   $ph->addPhpbb3User('dave','password','dave@dave.com');
Run Code Online (Sandbox Code Playgroud)

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

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;   
}
Run Code Online (Sandbox Code Playgroud)

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

PHP …
Run Code Online (Sandbox Code Playgroud)

php phpbb3 laravel composer-php laravel-5

8
推荐指数
1
解决办法
830
查看次数

暂时在MySQL*中存储明文密码是否安全*?

一点点背景 -

我运行一个用Java运行的游戏服务器,以及一个用PHP运行的论坛(phpbb).我将游戏和论坛帐户关联起来,这样更改游戏中的密码会自动更改论坛帐户的密码.这两个系统使用不同的密码哈希算法,我需要使用phpbb的内置函数更新论坛端的密码哈希,这意味着我必须从PHP脚本调用它们(而不是运行我自己的代码).

为了做到这一点,我决定让Java调用PHP脚本,只要需要更改密码就向PHP脚本发出HTTP请求,以触发完成论坛帐户密码更改过程的PHP脚本.但是,我不想将明文密码放在任何HTTP调用中,因为它可能会显示在日志文件中,也可能显示在其他可利用区域中.我目前的想法是,当Java端更改密码时,它会将新的明文密码放入数据库表中,然后发出HTTP请求以触发PHP脚本,这样就不会有任何哈希值或敏感信息进入HTTP请求.HTTP调用只传递要更改的帐户的用户名,以及共享密钥的md5哈希加上用户名,以进行身份​​验证.当PHP脚本运行时

在典型条件下,明文密码在删除之前可能在数据库中不到一秒钟.理想情况下,我根本不会将它存储在任何地方,但是当我无法预测论坛的密码哈希是什么时,我不确定如何将所需的更改从Java传递到PHP,所以我需要以某种方式发送执行散列的PHP脚本的明文密码.

有关更好的方法的任何想法,或有关于在很短的时间内存储明文密码的任何反馈?我认为MySQL登录是安全的,不与其他人或项目共享.

谢谢!

php java mysql security phpbb3

7
推荐指数
1
解决办法
379
查看次数

将CodeIgniter与phpBB3用户系统集成

有没有办法将CodeIgniter与phpBB3集成?我想使用用户系统作为我未来的CodeIgniter应用程序的基础.

使用phpBB作为基本用户系统是一个好主意吗?

php session codeigniter phpbb3

6
推荐指数
1
解决办法
2534
查看次数

phpBB3自动登录

我已经将phpbb3论坛集成到我现有的网站上.

我已经能够使我的注册过程也将用户添加到phpbb数据库中.

现在,我正面临一个问题,即当我登录我的网站时,我试图让用户自动登录论坛.

这里有人这样做过吗?我在Google上找不到任何相关内容,因为所有帖子似乎都在谈论'phpbb外部网页'以及如何在其他网页上使用phpbb会话.然而,我想要做的是仅在会员登录我的网站时启动登录,并且按照我在谷歌上找到的教程将让我的用户登录我的论坛时登录我的网站(这是另一种方式).

谢谢

php phpbb phpbb3

6
推荐指数
1
解决办法
5960
查看次数

nginx - > php5-fpm:php中的错误未记录(任何地方!)

我试图在EC2服务器上设置phpbb.经过一个小时左右的绝望,我发现phpbb启动中的某一行失败了:

$db->sql_connect($dbhost, $dbuser, $dbpasswd, $dbname, $dbport, false, defined('PHPBB_DB_NEW_LINK') ? PHPBB_DB_NEW_LINK : false);
Run Code Online (Sandbox Code Playgroud)

轻松修复,我需要正确配置我的数据库属性.

但是,要发现我必须在php应用程序的前几个文件中逐块插入echo'1'语句.在echo语句之前,当php出错时,我只会得到一个状态为200的空白页面.

我在FPM的php.ini中打开了log_errors和display_errors,但显然他们对这种特殊类型的错误没有做任何事情.

/ var/log/syslog,/ var/log/nginx/*,/ var/log/php_fpm.log或nginx站点的错误日志中没有关于错误的日志.

所以,我的问题:为什么实际的错误(来自sql_connect)没有被记录在任何地方?(或者,如果它被记录,在哪里?)

php ubuntu nginx phpbb3

5
推荐指数
1
解决办法
7273
查看次数