您现在的位置是:首页 > cms教程 > 帝国CMS教程帝国CMS教程
帝国CMS检测字段重复教程
怀亦2025-08-12帝国CMS教程已有人查阅
导读帝国CMS检测字段重复,其实这个帝国CMS就自带的,大家可以参考帝国CMS判断标题是否重复的代码,改成你的需要判断的代码就可以了。
帝国CMS检测字段重复,其实这个帝国CMS就自带的,大家可以参考帝国CMS判断标题是否重复的代码,改成你的需要判断的代码就可以了。
但是有些情况帝国自带的标题重复方法达不到要求,下面代码号教大家如何自己手写一个帝国CMS检测字段重复教程。
方法一
HTML 示例代码:
1.后台-》管理数据表-》找到title字段-》输入表单替换html代码
找到:
但是有些情况帝国自带的标题重复方法达不到要求,下面代码号教大家如何自己手写一个帝国CMS检测字段重复教程。
方法一
HTML 示例代码:
<label for="siteurl">输入网址:</label>
<input type="text" id="siteurl" name="siteurl" oninput="checkSiteUrl()">
<span id="result"></span>
<script>
function checkSiteUrl() {
const siteurl = document.getElementById('siteurl').value;
if (siteurl.trim() === '') return;
// 发送 AJAX 请求到后端
fetch('/check-url', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ siteurl })
})
.then(response => response.json())
.then(data => {
const resultElement = document.getElementById('result');
if (data.exists) {
resultElement.style.color = 'red';
resultElement.textContent = '此网址已存在!';
} else {
resultElement.style.color = 'green';
resultElement.textContent = '此网址可用。';
}
})
.catch(error => console.error('Error:', error));
}
</script>
后端php代码:
<?php
header('Content-Type: application/json');
// 假设这是数据库中的已有 URL 列表
$existing_urls = [
"http:// .qq.com/",
"https://qq.com",
"http://example.com"
];
// 获取前端传来的数据
$input_url = $_POST['siteurl'] ?? '';
if (empty($input_url)) {
echo json_encode(['exists' => false]);
exit;
}
/**
* 对 URL 进行标准化处理
*/
function normalize_url($url) {
// 解析 URL
$parsed_url = parse_url($url);
// 提取域名部分
$host = strtolower($parsed_url['host'] ?? '');
if (substr($host, 0, 4) === ' .') {
$host = substr($host, 4); // 去掉 .
}
// 提取路径部分并去掉多余的斜杠
$path = isset($parsed_url['path']) ? rtrim($parsed_url['path'], '/') : '';
// 返回标准化后的 URL
return [
'host' => $host,
'path' => $path
];
}
/**
* 生成所有可能的 URL 变体
*/
function generate_variations($normalized_url) {
$variations = [];
$protocols = ['http', 'https'];
$host = $normalized_url['host'];
$path = $normalized_url['path'];
foreach ($protocols as $protocol) {
// 不带 .
$variations[] = $protocol . '://' . $host . $path;
// 带 .
$variations[] = $protocol . ':// .' . $host . $path;
}
return $variations;
}
// 标准化输入的 URL
$normalized_input = normalize_url($input_url);
// 生成所有可能的变体
$variations = generate_variations($normalized_input);
// 检查变体是否存在于数据库中
$exists = false;
foreach ($variations as $variation) {
if (in_array($variation, $existing_urls)) {
$exists = true;
break;
}
}
// 返回结果
echo json_encode(['exists' => $exists]);
?>
方法二1.后台-》管理数据表-》找到title字段-》输入表单替换html代码
找到:
<input type=text name=title value="<?=ehtmlspecialchars(stripSlashes($r[title]))?>" size="60">
替换成:
<input type=text name=title value="<?=ehtmlspecialchars(stripSlashes($r[title]))?>" size="60" onblur="checkTitle()">
在最下面添加如下代码:(JQ库自己加入就进了,这里的链接用的绝对地址)
<script type="text/javascript" src="/js/jquery-1.7.2.min.js"></script>
<script type="text/javascript">function checkTitle()
{
var classid=<?=$_GET[classid]?>; var id=<?=$_GET[classid]?>; var tit=document.add.title.value;
console.log("我是标题="+tit);
console.log("我是classid="+classid);
console.log("我是id="+id);
$.ajax({
url: 'ReTitleAjax.php?classid='+classid+'&id='+id+'&title='+tit,
dataType:"json",
cache: false,
error: function(){
alert("检测失败,请重试");
},
success: function(data){ if (data==1){
alert('重复标题');
} if (data==0){ //alert('可以添加信息');
console.log("可以添加信息");
}
}
});
}</script>
2.新建一个PHP文件ReTitleAJAX.php添加如下代码到PHP代码中
define('EmpireCMSAdmin','1');
require("../class/connect.php");
require("../class/db_sql.php");
require("../class/functions.php");
require LoadLang("pub/fun.php");
require("../data/dbcache/class.php");
$link=db_connect();
$empire=new mysqlquery();
$editor=1;
//验证用户
$lur=is_login();
$logininid=$lur['userid'];
$loginin=$lur['username'];
$loginrnd=$lur['rnd'];
$loginlevel=$lur['groupid'];
$loginadminstyleid=$lur['adminstyleid'];
$classid=(int)$_GET['classid'];
$id=(int)$_GET['id'];
$title=AddAddsData($_GET['title']);
$where='';
if($id)
{
$where=' and id<>'.$id;
}
//已审核
$num=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_".$class_r[$classid][tbname]." where title='".addslashes($title)."'".$where." limit 1");
//未审核
if(empty($num))
{
$num=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_".$class_r[$classid][tbname]."_check where title='".addslashes($title)."'".$where." limit 1");
}
echo json_encode($num)
然后把这个ReTitleAjax.php文件传到管理员目录也就是(/e/admin/目录下就可以了)
本文标签:帝国cms字段
很赞哦! ()
相关教程
- (PC+手机)帝国cms7.5漫画图片连载网站源码免费下载
- 帝国CMS7.5二次元COS漫展网站模板源码免费下载
- 帝国CMS7.5小说推荐公众号导航带wap手机站+带采集工具
- 帝国CMS7.5漫画网站模板带手机端源码免费下载
- 帝国cms7.5游戏门户H5小游戏网站模板源码免费下载
- 帝国CMS游戏应用APP推广下载站模板免费下载
- 帝国CMS7.5H5小游戏模板游戏攻略下载网整站源码
- 帝国cms7.5手游评测资讯礼包合集游戏专区下载网站模板
- 帝国cms7.5大型游戏资讯门户网站源码免费下载
- 帝国CMS7.5手游资讯下载综合门户免费网站模板
- 帝国cms7.5奇闻异事末解之谜模板免费下载带数据
- 帝国cms7.5模板情感文学名言名句心情文章类源码下载带手机
图文教程
帝国CMS灵动标签SQL调用多条广告的方法
这个方法并不是很实用,因为不如JS直接调用来的方便,但是用在一些特殊需求里是可以的,写以下代码留待有需要的小伙伴参考!
帝国CMS报错Warning: Cannot modify header information怎么办
今天偶然进入帝国CMS网站后台发现出现了:Warning:Cannot modify header information - headers already sent by
帝国CMS实现当前栏目高亮的代码
一级栏目高亮,是指全部的顶级栏目高亮,即使进入到顶级栏目的二级、三级栏目,也能最顶级的栏目高亮,代码如下:
帝国CMS怎么导入会员excel插件
插件用途:批量导入excel制作好的会员表,支持定义字段,比如手机号,身份证号等!自动判断是否重复,有重复则不导入,导入成功显示结果!适用程序:帝国CMS7.X UTF8版本,不修改帝国CMS本身
相关源码
-
(自适应响应式)HTML5甲醛环境检测网站模板带在线留言和资料下载本模板为甲醛检测与环保科技企业开发,采用PbootCMS内核构建。首页集成空气质量数据可视化模块,服务流程采用时间轴展示设计,检测报告板块支持PDF在线预览功能查看源码 -
(自适应)建站广告公司工作室作品展示品牌策划设计pbootcms源码下载基于PbootCMS开发的创意服务展示系统,内置作品集展示、服务流程图等专业模块,预设客户案例、设计流程等创意行业专属栏目结构。查看源码 -
WordPress主题模板主题巴巴/博客X主题源码免费下载博客X主题专注于内容创作领域,为博客、资讯类网站提供专业的内容展示解决方案。该模板采用精心设计的布局结构,能够有效提升内容的可读性和用户停留时间。查看源码 -
(自适应响应式)门窗定制门业带视频功能pbootcms模板下载本模板采用PbootCMS内核开发,为门窗制造、定制安装企业打造,通过可视化后台管理系统快速构建品牌官网。自适应设计确保在手机、平板、电脑等设备上均能获得优质浏览体验查看源码 -
帝国cms7.5品牌连锁店招商加盟商机网站模版源码本模板为招商加盟、创业投资、品牌连锁等商业领域设计,采用帝国CMS7.5内核构建,整体风格简洁大气,突出商业信任感与专业度,适合各类招商加盟项目展示、品牌连锁店宣传等商业应用场景。查看源码 -
(PC+WAP)铝合金门窗定制pbootcms网站模板源码为铝合金门窗、定制门窗企业打造的高性能网站模板,基于PbootCMS开源内核开发,采用HTML5自适应架构,PC与手机端数据实时同步,覆盖全终端用户交互场景。查看源码
| 分享笔记 (共有 篇笔记) |

