首页 > 解决方案 > 在 Octobercms 的页面中运行外部 PHP 脚本

问题描述

为了加快在前端创建 CRUD 接口,我尝试在 octobercms (PHP 7.2) 中使用名为 PDOCrud 的外部工具/程序。PDOCrud 在单独工作时完美地完成了它的工作,但是我在将它集成到 Octobercms 时遇到了问题(我希望它可以被集成)。

这是 PDOCrud 渲染 crud 界面的正常代码:

 require_once base_path('script/pdocrud.php'); 
 $pdocrud = new PDOCrud();
 echo $pdocrud->dbTable("tablename")->render(); 

这就是我将它包含在普通页面中的方式

title = "Make tournament"
url = "/make-tournament"
layout = "Default"
description = "some description"
is_hidden = 0
==
<?php
function onstart() { 
  require_once base_path('script/pdocrud.php'); 
  $this['crud'] = new class {
        public function foo() {
            $pdocrud = new PDOCrud();
            return $pdocrud->dbTable("tablename")->render(); 
            // return phpinfo();
        }
    };
}
?>
==
<h1>Make crud</h1>
{{ crud.foo()|raw }}

表格出现。但是 crud 操作的按钮不执行任何操作。也许 octobercms 的会话与外部代码的会话发生冲突,或者它可能被加载两次的 jquery 发生冲突。有没有人尝试过类似的方法并解决了这个问题?

编辑:我尝试了这些建议,但它对我不起作用,也许我错过了一些东西。就在几个小时前,外部程序的作者进行了升级,而我之前的代码运行良好。我知道没有正确使用该框架,但我需要一个解决方法来面对最后期限。感谢大家!

标签: phplaraveloctobercms

解决方案


为此目的使用 PDOCrud 会忽略 OctoberCMS 中内置的大量功能。为自己创建一个自定义插件并将非常强大且易于使用的后端表单集成到一个组件中以在您的前端使用是非常简单的。


推荐阅读