一键生成表单的情况下模糊搜索有BUG

plrj007

问题描述

表单中有3个模糊搜索栏目,现在的情况是我把自动生成的3个模糊搜索隐藏掉就可以正常搜索了。但是正常都显示的情况下会搜索不出来。

程序代码或配置


                    <div class="layui-form-item">
                        <label class="layui-form-label">流水号</label>
                        <div class="layui-input-block">
                            <div class="layui-input-block">
                                <input type="hidden" autocomplete="off" name="serial[]" value="like" class="layui-input inline-block">
                                <input type="text" autocomplete="off" name="serial[]" class="layui-input">
                            </div>
                        </div>
                    </div>

                    <div class="layui-form-item">
                        <label class="layui-form-label">关联运单ID</label>
                        <div class="layui-input-block">
                            <div class="layui-input-block">
                                <input type="hidden" autocomplete="off" name="order_id[]" value="like" class="layui-input inline-block">
                                <input type="text" autocomplete="off" name="order_id[]" class="layui-input">
                            </div>
                        </div>
                    </div>

                    <div class="layui-form-item">
                        <label class="layui-form-label">备注</label>
                        <div class="layui-input-block">
                            <div class="layui-input-block">
                                <input type="hidden" autocomplete="off" name="memo[]" value="like" class="layui-input inline-block">
                                <input type="text" autocomplete="off" name="memo[]" class="layui-input">
                            </div>
                        </div>
                    </div>

重现问题的步骤

表单中设置3个模糊搜索字段,我留空应该是不搜索但是实际上是无法搜索出来数据。

操作系统环境及workerman/webman等具体版本

php8.2 NG1.24

126 1 0
1个回答

plrj007

已解决
Crud.php 104到105行 查询条件筛选加入空like筛选


                $value === '' || !isset($allow_column[$column]) ||
                is_array($value) && (empty($value) || !in_array($value[0], ['null', 'not null']) && !isset($value[1]))

添加条件改为

$value === '' || !isset($allow_column[$column]) || is_array($value) && (empty($value) || !in_array($value[0], ['null', 'not null']) && !isset($value[1])) || ( isset($value[0]) && $value[0]==='like' && isset($value[1]) && $value[1]==='')
  • 暂无评论
×
🔝