找不到帮助文档?你想要哪方面的帮助教程?提交文档建议 >
帮助文档首页
DiYunCMS公众号
公众号二维码

使用网站表单插件实现表单内容查询功能(证书查询等)

更新时间:2023-11-24 加入收藏
0

使用网站表单插件可以实现诸如【证书查询】、【授权查询】等单个内容查询功能,查询成功后直接显示内容页。


实现方法

以证书查询为例

一、创建证书查询表单,表单别名为:certificate

image


二、创建几个证书字段,比如:

证书名称:title

证书编号:number

姓名:name

image


三、开发查询功能

3.1、打开 dayrui/App/Form/Controllers/Certificate.php

image


3.2、在如下图所示的位置添加如下代码:

public function search() {

    // 接收url传递的值
    $title = dr_safe_replace(\Phpcmf\Service::L('input')->get('number'));
    $name = dr_safe_replace(\Phpcmf\Service::L('input')->get('name'));
    if (!$title) {
        $this->_msg(0, '证书编号不能为空');
    }
    if (!$name) {
        $this->_msg(0, '证书姓名不能为空');
    }

    // 查询
    $row = \Phpcmf\Service::M()->table($this->init['table'])->where('number', $title)->where('name', $name)->getRow();
    if (!$row) {
        $this->_msg(0, '没有查询到');
    }

    // 查询到了调转到表单详情页面
    $url = SITE_URL.'index.php?s=form&c='.$this->form['table'].'&m=show&id='.$row['id'];

    dr_redirect($url);
}


3.3、添加前端查询表单

在前端任何页面模板添加一个查询表单:

<form class="search-form" action="/index.php" method="get">
    <input type="hidden" name="s" value="form">
    <input type="hidden" name="c" value="certificate">
    <input type="hidden" name="m" value="search">
    证书编号:<input type="text" class="form-control" name="number" >
    证书姓名:<input type="text" class="form-control" name="name" >
    <button class="btn default" type="submit"> 查询 </button>
</form>


这样就已经实现了证书查询功能,输入证书编号与姓名,如果正常就会直接跳转到详情页面

在详细页面调用字段信息就行了

网站表单模板说明参考:https://www.diyuncms.com/help/show/1103.html


以上是2个字段都必须填写正确才可以。

如果只需要输入证书编号1个字段值就能搜索,就改一下

public function search() {

    // 接收url传递的值
    $number = dr_safe_replace(\Phpcmf\Service::L('input')->get('number'));
    if (!$number) {
        $this->_msg(0, '证书编号不能为空');
    }

    // 查询
    $row = \Phpcmf\Service::M()->table($this->init['table'])->where('number', $number)->getRow();
    if (!$row) {
        $this->_msg(0, '没有查询到');
    }

    // 查询到了调转到表单详情页面
    $url = SITE_URL.'index.php?s=form&c='.$this->form['table'].'&m=show&id='.$row['id'];

    dr_redirect($url);
}

这样只需1个字段就能查询,


注意:后台添加的证书内容,证书编号字段内容必须是唯一的。


没有动手能力或者需要更强大的证书查询功能,可以使用下面这款插件





--
有帮助
--
没帮助
0
收藏
0
打赏
推荐产品
Hello,欢迎来咨询~
点击在线咨询