帝国论坛帝国网站管理系统交流区帝国CMS使用交流[求助]关于标题查重,如何加上待审核的表. 【本版专题贴子】  
主题:[求助]关于标题查重,如何加上待审核的表. [加入收藏夹]   

pancai666
用户头衔:举人

精华贴   :0
发贴数   :153
经验值   :1483
注册时间:2009-10-19
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 1 楼]
[求助]关于标题查重,如何加上待审核的表.
如下代码是后台发布文章自动查询标题是否已有重复,现在问题是,这个只查询了已审核的文章,没有查询待审核的文章,现想在下面的代码中加上查询待审核的文章:
待审核表应该是:        phome_ecms_article_check

<?php
/*

*/
require("../../class/connect.php");
require("../../class/db_sql.php");
require("../../data/dbcache/class.php");
$link=db_connect();
$empire=new mysqlquery();
$return=array();

if($_GET['title']!=strip_tags($_GET['title'])){
        $return['msg']=0;
        $return['text']="<span style='color:#f00'>非法字符已被清空!</span>";
        echo json_encode($return);
        exit;       
};
$title=RepPostVar($_GET['title']);
$classid=intval($_GET['classid']);
$id=intval($_GET['id']);
$tbname=$class_r[$classid][tbname];
if(strlen($title)<1||strlen($title)>100){
        $return['msg']=1;
        $return['text']="";
        echo json_encode($return);
        exit;
}else{
        $w=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_$tbname where title='$title' and id<>$id limit 1");
        if(!$w){
        $return['msg']=2;
        $return['text']="<span style='color:#808080'><b>^_^没重复<b></span>";
        echo json_encode($return);
        exit;
        }else{
        $return['msg']=7;
        $return['text']="<span style='color:#f00'><b>标题重复!<b></span>";
        echo json_encode($return);
        exit;
        }
}
db_close();
$empire=null;



请帮忙看看,不胜感激!!!

[该贴被修改 1 次,最后修改时间 2024-01-25 12:10:21 ]



2024-01-25 11:49:35 已设置保密 顶部 回复 引用 报告 编辑 删除

jiuhecai
用户头衔:探花

精华贴   :0
发贴数   :3023
经验值   :8618
注册时间:2014-07-02
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 2 楼]

$w=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_$tbname where title='$title' and id<>$id limit 1");
这哥语句后插入:

$w+=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_$tbname_check where title='$title' and id<>$id limit 1");

即可



帝国插件 插件定制。帝国临时工。查杀顽固木马。专业解决难题。qq--110102296
2024-01-26 07:27:23 已设置保密 顶部 回复 引用 报告 编辑 删除

pingpong
用户头衔:探花

精华贴   :0
发贴数   :9328
经验值   :24281
注册时间:2008-11-02
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 3 楼]

楼上正解




2024-01-26 07:49:50 已设置保密 顶部 回复 引用 报告 编辑 删除

pancai666
用户头衔:举人

精华贴   :0
发贴数   :153
经验值   :1483
注册时间:2009-10-19
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 4 楼]

奇了怪了,加上了这个语句也不行,弹出提示框:"undefined"

不知道这个的的查询重复的原理是什么?
我在MYsql 运行原来的语句select count(*) as total from {$dbtbpre}ecms_$tbname where title='标题' limit 1;  ,也是提示出错的

[该贴被修改 1 次,最后修改时间 2024-01-26 13:01:29 ]



2024-01-26 12:59:35 已设置保密 顶部 回复 引用 报告 编辑 删除

时节
用户头衔:进士

精华贴   :0
发贴数   :1836
经验值   :4925
注册时间:2014-05-26
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 5 楼]

楼上提示是js有问题




2024-01-27 07:29:15 已设置保密 顶部 回复 引用 报告 编辑 删除

zhxin
用户头衔:探花

精华贴   :0
发贴数   :3773
经验值   :10388
注册时间:2013-01-09
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 6 楼]

同上




2024-01-29 07:50:17 已设置保密 顶部 回复 引用 报告 编辑 删除

feier
用户头衔:探花

精华贴   :0
发贴数   :6751
经验值   :21098
注册时间:2008-07-31
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 7 楼]

直接访问页面看提示什么




2024-01-30 08:01:57 已设置保密 顶部 回复 引用 报告 编辑 删除

pancai666
用户头衔:举人

精华贴   :0
发贴数   :153
经验值   :1483
注册时间:2009-10-19
信息 搜索 好友 发送悄悄话 免费开源-EBMA系统:更安全的MYSQL管理和备份系统】   [第 8 楼]

PHP文件如下:
<?php
/*

*/
require("../../class/connect.php");
require("../../class/db_sql.php");
require("../../data/dbcache/class.php");
$link=db_connect();
$empire=new mysqlquery();
$return=array();

if($_GET['title']!=strip_tags($_GET['title'])){
        $return['msg']=0;
        $return['text']="<span style='color:#f00'>非法字符已被清空!</span>";
        echo json_encode($return);
        exit;      
};
$title=RepPostVar($_GET['title']);
$classid=intval($_GET['classid']);
$id=intval($_GET['id']);
$tbname=$class_r[$classid][tbname];
if(strlen($title)<1||strlen($title)>100){
        $return['msg']=1;
        $return['text']="";
        echo json_encode($return);
        exit;
}else{
        $w=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_$tbname where title='$title' and id<>$id limit 1");
        if(!$w){
        $return['msg']=2;
        $return['text']="<span style='color:#808080'><b>^_^没重复<b></span>";
        echo json_encode($return);
        exit;
        }else{
        $return['msg']=7;
        $return['text']="<span style='color:#f00'><b>标题重复!<b></span>";
        echo json_encode($return);
        exit;
        }
}
db_close();
$empire=null;

另:
$w=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_$tbname where title='$title' and id<>$id limit 1");
这哥语句后插入:

$w+=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_$tbname_check where title='$title' and id<>$id limit 1");

即可
chcek.js的内容如下:

$(function(){
        if(!$('#msg_title').length){
                $('input[name="title"]').parent('td').append('<span id="msg_title"><\/span>');
        }
        $('input[name="title"]').blur(function(){
                var $user_val=$(this).val();
                this.value=this.value.replace(/[!!¥……*——+、#$%&'"\/\\=??。,《》<>·^`{|}~“”]|\s|\-|\(|\)|[\uff00-\uffff]/g,'');
                $.ajax({
                        type:"get",
                        url:"/e/extend/oneTitle/index.php?classid="+$('input[name="classid"]').val()+"&id="+$('input[name="id"]').val()+"&title="+$('input[name="title"]').val()+"&sid="+Math.random(),
                        async:true,
                        dataType:"json",
                        success:function(data){
                                $('#msg_title').html(data['text']);
                                return false;
                        },
                        error:function(jqXHR){
                                  alert('检测标题重复时出现错误,请检查相关文件路径'.url);
                                return false;
                        }
                });       
        });
})
也不知道怎么做相应的修改.

[该贴被修改 1 次,最后修改时间 2024-02-01 15:06:41 ]



2024-02-01 15:03:36 已设置保密 顶部 回复 引用 报告 编辑 删除

tm2014
用户头衔:探花

精华贴   :0
发贴数   :2388
经验值   :6796
注册时间:2014-11-13
信息 搜索 好友 发送悄悄话 精益求精-帝国网站管理系统7.5正式版开源发布】   [第 9 楼]

同意7楼




2024-02-02 08:08:42 已设置保密 顶部 回复 引用 报告 编辑 删除

快速回复
内容

表情
使用EBB代码 使用smile代码 显示签名 自动分析url 自动分析img
     【进入高级模式】   (按 Ctrl+Enter 直接提交)
    顶部  加入收藏夹
关于帝国 | 广告服务 | 联系我们 | 法律声明 | 隐私条款 | 许可协议
Powered by: EBB Version 2.2.1