DEDECMS代码中文章踩一下,顶一下用什么代码?如下:我用了这段代码为什么不起作用?

DEDECMS代码中文章踩一下,顶一下用什么代码?如下:我用了这段代码为什么不起作用?,第1张

那个 从当前代码来说是可以没有的,之所以有这个 j 是因为这段代码写的很烂。

aid 是当前帖子的id

saveid 是已经顶过帖子的id,以逗号隔开。例如:1,2,3,4,5

他想通过cookie记录当前用户已经顶过帖子的id,然后根据aid来判断是否顶过了,顶过了就提示,否则就顶贴,并把当前aid加入到cookie里面

他这个如果不在digg_ajaxphp里面做是否顶过贴的判断,用户清除了cookie这代码会出bug。

这种东西后端也必须判断。

从代码上来看,应该不能取消顶贴,否则他这个就有bug了,中间的continue之类的东西写的太烂了导致你看不懂,我给你改进一下代码,你就懂了,其实根本不需要那么复杂

function postDigg(ftype, aid) {

var taget_obj = documentgetElementById('newdigg');

var saveid = GetCookie('diggid');

//如果saveid是null 则把他变为一个空字符串

saveid = typeof saveid == "string"  saveid : "";

var saveids = saveidsplit(',');

for(var i = saveidslength - 1; i >= 0; i--) {

if(saveids[i] == aid) {

//如果cookie存的id里面有,说明已经赞过了

alert("您已经顶过该帖,请不要重复顶帖 !");

//return就可以退出方法了

return;

}

}

//将新的aid加入到saveids里面

saveidspush(aid);

//将新的saveid写入cookie

SetCookie('diggid', saveidsjoin(","), 1);

myajax = new DedeAjax(taget_obj, false, false, '', '', '');

var url = "{dede:globalcfg_phpurl/}/digg_ajaxphpaction=" + ftype + "&id=" + aid;

myajaxSendGet2(url);

}

网站在搬家的时候,数据库还原可能有问题。

你去DEDECMS网,看一下网站搬家具体操作方法,严格按照步骤一步一步来操作。

不建议使用一些第三方备份还原程序进行操作。

按理说你复制来的代码应该是有效的,看代码调用了一个javascript方法,是不是javascript文件没有加载完整?

这是我调用的方法:

HTML部分:

<div class="newdigg" id="newdigg">

<div class="diggbox digg_good" onmousemove="thisstylebackgroundPosition='left bottom';" onmouseout="thisstylebackgroundPosition='left top';" onclick="javascript:postDigg('good',38)">

<div class="digg_act">顶一下</div>

<div class="digg_num">(0)</div>

<div class="digg_percent">

<div class="digg_percent_bar"><span style="width:0%"></span></div>

<div class="digg_percent_num">0%</div>

</div>

</div>

<div class="diggbox digg_bad" onmousemove="thisstylebackgroundPosition='right bottom';" onmouseout="thisstylebackgroundPosition='right top';" onclick="javascript:postDigg('bad',38)">

<div class="digg_act">踩一下</div>

<div class="digg_num">(0)</div>

<div class="digg_percent">

<div class="digg_percent_bar"><span style="width:0%"></span></div>

<div class="digg_percent_num">0%</div>

</div>

</div>

                

</div>

<script language="javascript">getDigg(38);</script>

JS部分:

function postDigg(ftype,aid)

{

var taget_obj = documentgetElementById('newdigg');

var saveid = GetCookie('diggid');

if(saveid != null)

{

var saveids = saveidsplit(',');

var hasid = false;

saveid = '';

j = 1;

for(i=saveidslength-1;i>=0;i--)

{

if(saveids[i]==aid && hasid) continue;

else {

if(saveids[i]==aid && !hasid) hasid = true;

saveid += (saveid==''  saveids[i] : ','+saveids[i]);

j++;

if(j==20 && hasid) break;

if(j==19 && !hasid) break;

}

}

if(hasid) { alert("您已经顶过该帖,请不要重复顶帖 !"); return; }

else saveid += ','+aid;

SetCookie('diggid',saveid,1);

}

else

{

SetCookie('diggid',aid,1);

}

myajax = new DedeAjax(taget_obj,false,false,'','','');

var url = "/plus/digg_ajaxphpaction="+ftype+"&id="+aid;

myajaxSendGet2(url);

DedeXHTTP = null;

}

function getDigg(aid)

{

var taget_obj = documentgetElementById('newdigg');

myajax = new DedeAjax(taget_obj,false,false,'','','');

myajaxSendGet2("/plus/digg_ajaxphpid="+aid);

DedeXHTTP = null;

}

确保加载了JS文件:

<script language="javascript" type="text/javascript" src="/include/dedeajax2js"></script>

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » DEDECMS代码中文章踩一下,顶一下用什么代码?如下:我用了这段代码为什么不起作用?

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情