首先是评论表单
文件:template\default\space_blog_view.htm
代码:
然后点击评论按钮调用 'comment_add')"
文件:source\script_ajax.js
代码:
function ajaxpost(formid, func, timeout) {
showloading();
if(ajaxpostHandle != 0) {
return false;
}
var ajaxframeid = 'ajaxframe';
var ajaxframe = $(ajaxframeid);
if(ajaxframe == null) {
if (is_ie && !is_opera) {
ajaxframe = document.createElement("");
} else {
ajaxframe = document.createElement("iframe");
ajaxframe.name = ajaxframeid;
ajaxframe.id = ajaxframeid;
}
ajaxframe.style.display = 'none';
$('append_parent').appendChild(ajaxframe);
}
$(formid).target = ajaxframeid;
$(formid).action = $(formid).action + '&inajax=1';
ajaxpostHandle = [formid, func, timeout];
if(ajaxframe.attachEvent) {
ajaxframe.detachEvent (' ajaxpost_load);
ajaxframe.attachEvent(' ajaxpost_load);
} else {
document.removeEventListener('load', ajaxpost_load, true);
ajaxframe.addEventListener('load', ajaxpost_load, false);
}
$(formid).submit();
return false;
}
然后通过ajaxpostHandle = [formid, func, timeout];调用
文件:source\script_manage.js
代码:
function comment_add(id, result) {
if(result) {
var obj = $('comment_ul');
var newli = document.createElement("div");
var x = new Ajax();
x.get('do.php?ac=ajax&op=comment', function(s){
newli.innerHTML = s;
});
if($('comment_prepend')){
obj = obj.firstChild;
while (obj && obj.nodeType != 1){
obj = obj.nextSibling;
}
obj.parentNode.insertBefore(newli, obj);
} else {
obj.appendChild(newli);
}
if($('comment_message')) {
$('comment_message').value= '';
}
if($('comment_replynum')) {
var a = parseInt($('comment_replynum').innerHTML);
var b = a + 1;
$('comment_replynum').innerHTML = b + '';
}
//提示获得积分
showreward();
}
}
然后通过ajax方法
x.get('do.php?ac=ajax&op=comment', function(s){
newli.innerHTML = s;
});
提交到'do.php?ac=ajax&op=comment'此路径下
文件:source\do_ajax.php
代码:
if($op == 'comment') {
$cid = empty($_GET['cid'])?0:intval($_GET['cid']);
if($cid) {
$cidsql = "cid='$cid' AND";
$ajax_edit = 1;
} else {
$cidsql = '';
$ajax_edit = 0;
}
//评论
$list = array();
$query = $_SGLOBAL['db']->query("SELECT * FROM ".tname($ttb)." WHERE $cidsql authorid='$_SGLOBAL[supe_uid]' ORDER BY dateline DESC LIMIT 0,1");
while ($value = $_SGLOBAL['db']->fetch_array($query)) {
realname_set($value['authorid'], $value['author']);
$list[] = $value;
}
realname_get();
}
返回提交的评论