联系官方销售客服

1835022288

028-61286886

开发框架 版主:迅睿框架研发组
模块表单中判断提交title是否已经重复提交
类型:迅睿CMS 更新时间:2021-10-26 10:18:27 数据库操作 table类 验证重复
模块表单中判断提交title是否已经重复提交

按照以下教程修改后,实际提交并无判断重复。是不是因为框架升级了,这个方法不行了呢。 应该怎么写呢


<?php namespace Phpcmf\Controllers;

/**
 * 二次开发时可以修改本文件,不影响升级覆盖
 */

class Test extends \Phpcmf\Home\Mform
{

    public function index() {
        $this->_Home_List();
    }

    public function show() {
        $this->_Home_Show();
    }

    public function post() {
    
        if (IS_POST) {
            // 这里表示提交之前
            $post = \Phpcmf\Service::L('input')->post('data');
            if (\Phpcmf\Service::M()->table($this->init['table'])
            ->where('cid', $this->index['id'])
            ->where('title', $post['title'])->counts()) {
                $this->_json(0, 'title字段的值已经存在,不能重复提交');
            }
            
        }
    
        $this->_Home_Post();
    }
}

原文链接https://www.xunruicms.com/doc/1003.html

回帖
  • 亦潇科技
    #1楼    亦潇科技
    2021-10-26 08:30:30
    Firefox 93.0 0


    我是这样做的:

    代码如下:

    if (IS_POST) {
    // 表单英文名
    $form=\Phpcmf\Service::L('input')->get('c');
    //当前文章id
    $cid=\Phpcmf\Service::L('input')->get('cid');
    //当前模块表单数据表拼接
    $table=SITE_ID.'_'.MOD_DIR.'_form_'.$form;

    $post = \Phpcmf\Service::L('input')->post('data');

    if (\Phpcmf\Service::M()->table($table)
    ->where('cid', $cid)
    ->where('title', $post['title'])->counts()) {
    $this->_json(0, 'title字段的值已经存在,不能重复提交');
    }

    }
  • 远策
    #2楼    远策
    2021-10-26 09:16:57
    Chrome 0
    亦潇科技 感谢,您这发的代码,是放入哪个文件的。
  • 亦潇科技
    #3楼    亦潇科技
    2021-10-26 09:29:17
    华为手机 0
    你上面那个代码在哪 这个就在哪
  • 亦潇科技
    #4楼    亦潇科技
    2021-10-26 09:30:27
    华为手机 0
    就是把官方的代码改了一下 因为我发现官方的代码 有几个字段获取不到 我修改了一下
    满意答案
  • 远策
    #5楼    远策
    2021-10-26 10:18:27
    Chrome 0
    @亦潇科技:太感谢了,代码没问题可以用。 帮我解决了很大问题。谢谢谢谢