公司开发新模块上传微信验证 txt 文件到网站根目录全记录

2024-06-14
来源:网络整理

前言

公司需要新模块将微信验证txt文件上传到网站根目录下,开发过程记录在此供大家参考。

创建新模块

登录系统 -> 快速进入 -> 系统管理 ->扩展 ->模块管理 -> 设计一个新模块,步骤如下:

找到位置后,开始填写表格,因为功能比较简单,需要填写的内容不多,内容如下:

填写,以下两个选项:

我们来看看这里的需求,我选择直接生成,方便下一步的开发。

查看模块

构建完成后,可以在“系统管理”-“>”扩展“->”模块管理“->”安装模块“中找到它。

安装完成后,可以在系统管理 -> 扩展 -> 模块管理 -> 已安装模块中找到它

该菜单可以在“市场营销”模块中找到 -> 常用服务和工具

点击后会出现核心功能设置页面,因为还没有开始详细开发,所以暂时空白

最后,看一下目录中生成的文件

每个文档的功能如下:

初始创建模块结束

精心开发入口菜单

下一步,核心功能页面将新增两个菜单,分别是:上传设置和立即上传

打开插件目录下的.xml文件,向节点添加一个节点,代码如下:

保存、上传、预览:

这里没有响应,没错,缓存更新了多少次,还是没有响应,检查确认文件确实上传了,那为什么呢?

答案是:卸载模块并重新安装。

那么卸载安装后,效果如下:

写入功能

就原来的程序功能设计而言,相关设置是固定的,所以现在只实现了一个功能,那就是管理员选择要上传的文件。

第一步,在当前模块文件夹中新建site.php文件(微网站页面),并在该文件夹中新建.html(上传操作模板)

site.php代码:

template("ftp_do"); } }

法典:

{template 'common/header'} hello {template 'common/footer'}

重新安装,查看页面:

好的,这意味着文件和模板规范都很好。

第二步是开始编写 site.php 和 .html 文件的代码。

.html是一个表单,因为没有从维清提供的库中找到文件相关的方法(我只看到了上传图片相关的函数,比如:()),表单还是用了原PHP方案,省心。

.html代码如下:

{template 'common/header'}

{template 'common/footer'}

然后site.php代码很简单,限制某些参数,实现上传:

'没有错误发生,文件上传成功', 1 => '上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值', 2 => '上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值', 3 => '文件只有部分被上传', 4 => '没有文件被上传' ]; /** * Ftp具体上传操作 */ public function doWebDo() { if ($_POST['sub']) { $file = $_FILES['thefile']; if ($file) { // 若所有检测都通过 if ($this->_checkError($file['error']) && $this->_checkMaxSize($file['size']) && $this->_checkFileType(pathinfo($file['name'])) && $this->_chekFileIsExists($file['name'])) { if (move_uploaded_file($file['tmp_name'], IA_ROOT.'/'.$file['name'])) { echo ''; } else { echo ''; } } } } include $this->template("ftp_do"); } /** * 检测文件上传是否出错 * * @param $error_code * @return bool */ private function _checkError($error_code) { if ($error_code > 0) { echo ''; return false; } return true; } /** * 检测文件大小是否符合要求 * * @param $size * @return bool */ private function _checkMaxSize($size) { if ($size > $this->_max_size) { echo ''; return false; } return true; } /** * 检测文件格式是否符合要求 * * @param $type * @return bool */ private function _checkFileType($type) { if ($type['extension'] != $this->_file_type) { echo ''; return false; } return true; } /** * 检测文件是否已存在 * * @param $filename * @return bool */ private function _chekFileIsExists($filename) { if (file_exists('/'.$filename)) { echo ''; return false; } return true; } }

代码完成,我们开始吧:

上传成功,检查FTP验证

好的! 搞定了。

总结

作为上传txt验证文件的模块,目前开发已经完成,仔细计算了一下,其实没什么,功能是简单的上传,因为是之前维清没有做过的模块,网上没有太多的信息,所以有点弯,希望本文能帮助大家开发模块。

下载

地址:

分享