schnoog / boilerplate
一个无需到处使用面向对象技术的Webapp模板。支持Smarty、Bootstrap、OAuth、用户管理、注册、OAuth、输入验证、一键(和一键名称输入)页面创建。
v0.0.7
2022-10-30 12:17 UTC
Requires
- delight-im/auth: *
- hybridauth/hybridauth: v3.*
- phpmailer/phpmailer: *
- sergeytsalkov/meekrodb: ^2.4
- smarty/smarty: ^4
- voku/anti-xss: ^4.1
- werx/validation: ^1.3
This package is auto-updated.
Last update: 2024-09-29 05:08:08 UTC
README
这是什么?
一个php webapp的模板,无需在每一步都使用面向对象技术。
它包括
- 用户注册
- 用户管理
- OAuth实现
- Cookie和Session管理
- 多语言支持(i18n,gettext。提供语言:en_GB & de_DE)
- XSS和CSRF保护
- 简单路由
- jQuery和php中的输入验证(带有接口函数)
- 持续增长的文档(在基本安装中)
- 页面生成(您可以选择新创建的页面是否使用ajax后端自动创建)
- 页面和导航树条目的ACL
以下库和插件被使用
- delight-im/PHP-Auth -- PHP-Auth (https://github.com/delight-im/PHP-Auth | MIT许可证)
- phpmailer/phpmailer -- PHPMailer (https://github.com/phpmailer/phpmailer | GNU Lesser General Public License v2.1)
- sergeytsalkov/meekrodb/ -- MeekroDB (https://github.com/SergeyTsalkov/meekrodb/ | GNU Lesser General Public License v3.0)
- smarty/smarty -- Smarty模板引擎 (https://github.com/smarty-php/smarty | GNU Lesser General Public License v2.1 (或更高版本))
- Bootstrap4 -- Bootstrap 4 (https://bootstrap.ac.cn | MIT许可证)
- bootstrap-4-multi-dropdown-navbar -- Bootstrap4 多下拉菜单导航栏 (https://github.com/bootstrapthemesco/bootstrap-4-multi-dropdown-navbar/ | GPL许可证)
- cookieconsent -- Cookie同意 (https://cookieconsent.insites.com | MIT许可证)
- nestable-fork -- Nestable (https://github.com/ozdemirburak/nestable-fork | BSD & MIT许可证)
- datatables -- DataTables Table插件用于jQuery (https://datatables.net.cn/ | MIT许可证)
- summernote/summernote -- Bootstrap的wysiwyg富文本编辑器 (https://github.com/summernote/summernote/ | MIT许可证)
- anti-xss -- anti-xss (https://github.com/voku/anti-xss | MIT许可证)
- werx/validation -- werx/validation (https://github.com/werx/validation | MIT许可证)
- jQuery Form Validator -- formvalidator.net (http://www.formvalidator.net | MIT许可证)
- Hybridauth -- Hybridauth 3.0 (https://hybridauth.github.io | MIT许可证)
- fontawesome -- Font Awesome (http://fontawesome.io/ | MIT许可证 & SIL OFL 1.1)
要求
- 能够运行php的Web服务器(带有intl扩展,PHP 7.1+,PDO扩展,OpenSSL扩展)
- MySQL数据库服务器(MySQL 5.5.3+ 或 MariaDB 5.5.23+)
- 要使用国际化,您可能需要在您的Linux服务器上运行locale-gen
- composer
前提条件
- 您需要一个空MySQL数据库的登录数据
- 您需要一个电子邮件服务器的登录数据
安装
安装目录不应该可以通过Web访问。只需要公共文件夹需要可以通过Web读取。
建议在composer上安装此模板。这将确保散列函数定义了随机盐。
使用composer安装
要安装模板,请在目标目录内运行以下命令
composer create-project schnoog/boilerplate . dev-master
或设置目标目录
composer create-project schnoog/boilerplate targetdir dev-master
使用git或下载安装
- 打开控制台并切换到目标目录,您想在那里创建签出
获取文件
git clone https://github.com/schnoog/PHPBoilerPlate.git .
或下载包并解压它
https://github.com/schnoog/PHPBoilerPlate/archive/master.zip
创建配置
这可以通过一个小助手脚本来完成
php ./appconsole create
或者手动复制分发的示例
cp app/config/main_config.php.dist app/config/main_config.php
手动将SECSALT1和SECSALT2替换为随机字符串。
配置
请调整以下设置以符合您的需求
app/config/main_config.php
。
初始化
现在您需要填充数据库。这可以通过一个小助手脚本来完成
php ./appconsole db
或者导入app/SETUP/中的每个NUM_xxxx.sql文件(从001_....开始)
mysql DATABASE < app/SETUP/001_UserTables.sql
mysql DATABASE < app/SETUP/002_PageStructure.sql
...
...
完成
现在您应该能够访问系统。管理员登录信息是:用户名:test@test.de 密码:1234abcd
更新
建议使用"php ./appconsole db"来安装和更新数据库。这将设置一个数据库版本标签,以便在后续版本中更新数据库而不会丢失数据。