您现在的位置是:首页 > 教程 > 帝国CMS教程帝国CMS教程
帝国cms怎么实现AJAX验证标题是否重复的教程
尔珍2023-05-30 23:45:27帝国CMS教程已有人查阅
导读帝国cms后台发信息最怕点击提交后,提示标题重复又要重新写一遍。现在给大家分享一款实时验证标题的方法,这样就可以避免出现重复的信息。
帝国cms后台发信息最怕点击提交后,提示标题重复又要重新写一遍。现在给大家分享一款实时验证标题的方法,这样就可以避免出现重复的信息。
帝国CMS-AJAX验证标题是否重复方法
1、帝国cms后台 - 管理数据表 - 找到自己使用的数据表 - 修改title字段 - 输入表单使用下面的代码
找到代码
<inputtype=textname=titlevalue="<?=ehtmlspecialchars(stripSlashes($r[title]))?>"size="60">
替换为
<inputtype=textname=titlevalue="<?=ehtmlspecialchars(stripSlashes($r[title]))?>"size="60"onblur="checkTitle()">
在输入表单最下面加入如下代码
<script type="text/javascript"src="http://apps.bdimg.com/libs/jquery/1.9.0/jquery.min.js"></script>
<script type="text/javascript">
functioncheckTitle()
{
varclassid=<?=$_GET[classid]?>;
varid=<?=$_GET[classid]?>;
vartit=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>
接着新建一个php文件,保存在 /e/admin/ReTitleAjax.php ,代码如下
define('EmpireCMSAdmin','1');
require("../class/connect.php");
require("../class/db_sql.php");
require("../class/functions.php");
requireLoadLang("pub/fun.php");
require("../data/dbcache/class.php");
$link=db_connect();
$empire=newmysqlquery();
$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(emptyempty($num))
{
$num=$empire->gettotal("select count(*) as total from {$dbtbpre}ecms_".$class_r[$classid][tbname]."_check where title='".addslashes($title)."'".$where." limit 1");
}
echojson_encode($num);
上面是采用post查询返回json结果的方式来实现查重,我们还可以通过get方式,js函数如下:
<script type="text/javascript">
functioncheckTitle()
{
varclassid='<?=$_GET[classid]?>';
varid='<?=$_GET[id]?>';
vartit=document.add.title.value;
varanswerurl='ReTitleAjax.php';
$.get(answerurl+"?classid="+classid+'<?=$ecms_hashur['ehref']?>&title='+tit, function(data){
if(data){
if(data==1){
$("#titletips").html("<font color='red'>已经存在此名称,请检查是否已经添加过</font>");
}
else{
$("#titletips").html("<font color='green'>可以添加信息</font>");
}
returnfalse;
}
else{
$("#titletips").html("<font color='red'>检测失败,请重试</font>");
}
});
}
</script>
接着在title字段的input后放一个容器用于存储提示信息,例如<span id="titletips"></span>,还可以通过在出现重复时禁用其他input输入等方式来限制,这里只是给出原理,大家可在此基础上发挥。
本文标签:
很赞哦! ()
相关文章
- 帝国cms自定义字段ReturnClassAddField标签截取字数的方法
- 自定义函数解决帝国cms简介截取字符出现html代码的方法
- 本地环境phpStudy搭建帝国CMS的方法
- 帝国cms提示Table 'px.***_enewspubtemp_2' doesn't exist的解决方法
- 帝国cms通过栏目ID获取栏目名称,别名,链接的方法
- 帝国CMS二次开发新浪iplookup根据ip跳转到不同域名的方法
- 帝国CMS怎么实现内容关键字替换图片alt的办法
- 帝国CMS怎么使用egetip()获取用户IP函数
- 帝国cms二次开发实现纯JS版的地区联动筛选功能
- 帝国CMS批量提取第一张图片为标题缩略图的方法
- 帝国cms自带ckeditor编辑器代码高亮的方法codesnippet风格
- 帝国CMS文章和TAG删除编号ID从1开始的方法
随机图文
-
帝国CMS内容页调用TAG的方法有哪些 包括样式改造。
方法1、调用10条当前tag[showtags]'selfinfo',10,0,'',0,'',' ',0,'','tagname'[/showtags]限制数量,把$i -
帝国CMS调用最新会员头像,用户名,链接的方法
帝国CMS用灵动标签调用最新会员[头像+用户名+链接]:调用说明:用户ID:<?=$bqr[userid]?>用户头像:<?=$bqr[titlepic]?>用户名称:<?=$bqr[title]?> -
帝国CMS灵动标签同日信息颜色相同,不同时间文章信息不同颜色
注意:可以加和多个,因为上面的6个(t0-t5)css颜色,剩下的将为默认的系统颜色,一般如果灵动标签调用10条信息就设置10个css颜色,既:10条信息对应10个日期时间 -
帝国CMS随机会员头像的代码
前些时检测服务器发现安全狗扫出了网站图片附件中有提示后门的图片,检查发现是用户上传的头像图片。不知道是不是误报,但确实有这个风险
留言与评论 (共有 条评论) |