点击[支持]页面不刷新,但支持量增1的效果。 很多网站上有支持按纽,一点击整个页面不刷新,但数字增加。这种代码怎么写。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1、与服务器端有交流,通常ajax实现的 ajax技术实现的//Ajaxfunction Ajax(){ var _xmlHttp = null; this.createXMLHttpRequest = function(){try{if (window.ActiveXObject){_xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");}else if (window.XMLHttpRequest){_xmlHttp = new XMLHttpRequest();}}catch(e){alert(e.name +" : " + e.message);}} this.backFunction = function(_backFunction){if(_xmlHttp.readyState == 4){if(_xmlHttp.status == 200){_backFunction(_xmlHttp.responseText);}}_xmlHttp.onreadystatechange = null;} this.doPost = function(_url,_parameter,_backFunction){try{_xmlHttp.open("POST",_url, false);_xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");_xmlHttp.send(_parameter);}catch(e){alert(e.name +" : " + e.message);}} this.doGet = function(_url,_parameter,_backFunction){try{var _random = Math.round(Math.random()*10000);_xmlHttp.open("GET", (_url+"?random=" +_random +"&" + _parameter), false);_xmlHttp.send(null);}catch(e){alert(e.name +" : " + e.message);}} this.ajaxRequest = function(_url,_parameter,_method,_backFunction){try{this.createXMLHttpRequest();if(_method.toLowerCase() == "post"){this.doPost(_url,_parameter,_backFunction);}else{this.doGet(_url,_parameter,_backFunction);}try{_xmlHttp.onreadystatechange = this.backFunction(_backFunction);}catch(err){}}catch(e){alert(e.name+" : "+e.message);}}}function Docheck(Id){ var url = "Sys_NewsList.php?work=docheck"; var parameter = "Id="+Id; var method = "post"; new Ajax().ajaxRequest(url,parameter,method,callBack); function callBack(xml){}}/*---------------------------------*/Function _DoCheck(){ OB_clean(); Global $Mysql,$Table; $Id=Toget("Id"); IF(!$Id){Exit(escapeshellarg('Error:Request data error!'));} $Rs=$Mysql->Get("Select IsCheck From {$Table} where Id=".$Id.""); IF(Count($Rs)<1){Exit(escapeshellarg('Error:Database Empty!'));} IF($Rs[0]==0){ $StrWhere="IsCheck=1"; }Else{ $StrWhere="IsCheck=0"; } $Sql="Update {$Table} Set ".$StrWhere." Where Id=".$Id.""; $Result=$Mysql->Exe($Sql); IF($Result!=1){ Exit(escapeshellarg($Result)); } Die();} 用ajax 来实现吧,无刷新技术。还有个 xajax 也可以,一样的道理。 可以使用ajax实现,也可以向一个隐藏大小的iframe提交数据 变量放入application中 或者弄个全局变量! 用个JS 也可以实现的,结合PHP代码,只不过那样好像在火狐里面有bug一直没想到解决方法 $Sql="Update {$Table} Set ".$StrWhere." Where Id=".$Id."+'1'"; 谁有php_memcache.dll 的相关资源 关于排序的问题 wordpress中如何让每个页面单独于首页显示出来啊? sqlite 批量插入数据出错 【求助】该收指点,递归应用问题 Codeigniter 不连续的数据库记录 分页类 的使用 怎样测试PHP的性能? 求解救 求一段根据日期隔行显示内容列表的PHP代码 tp5 微信支付回调notify 关于Wordpress更换主题时出错...寻求帮助 刚才看到有人提问PHP计算分数的题目,我想了一个很笨的方法,大家讨论一下。
//Ajax
function Ajax(){
var _xmlHttp = null;
this.createXMLHttpRequest = function(){try{if (window.ActiveXObject){_xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");}else if (window.XMLHttpRequest){_xmlHttp = new XMLHttpRequest();}}catch(e){alert(e.name +" : " + e.message);}}
this.backFunction = function(_backFunction){if(_xmlHttp.readyState == 4){if(_xmlHttp.status == 200){_backFunction(_xmlHttp.responseText);}}_xmlHttp.onreadystatechange = null;}
this.doPost = function(_url,_parameter,_backFunction){try{_xmlHttp.open("POST",_url, false);_xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");_xmlHttp.send(_parameter);}catch(e){alert(e.name +" : " + e.message);}}
this.doGet = function(_url,_parameter,_backFunction){try{var _random = Math.round(Math.random()*10000);_xmlHttp.open("GET", (_url+"?random=" +_random +"&" + _parameter), false);_xmlHttp.send(null);}catch(e){alert(e.name +" : " + e.message);}}
this.ajaxRequest = function(_url,_parameter,_method,_backFunction){try{this.createXMLHttpRequest();if(_method.toLowerCase() == "post"){this.doPost(_url,_parameter,_backFunction);}else{this.doGet(_url,_parameter,_backFunction);}try{_xmlHttp.onreadystatechange = this.backFunction(_backFunction);}catch(err){}}catch(e){alert(e.name+" : "+e.message);}}
}function Docheck(Id){
var url = "Sys_NewsList.php?work=docheck";
var parameter = "Id="+Id;
var method = "post";
new Ajax().ajaxRequest(url,parameter,method,callBack);
function callBack(xml){}
}/*---------------------------------*/
Function _DoCheck(){
OB_clean();
Global $Mysql,$Table;
$Id=Toget("Id");
IF(!$Id){Exit(escapeshellarg('Error:Request data error!'));} $Rs=$Mysql->Get("Select IsCheck From {$Table} where Id=".$Id."");
IF(Count($Rs)<1){Exit(escapeshellarg('Error:Database Empty!'));} IF($Rs[0]==0){
$StrWhere="IsCheck=1";
}Else{
$StrWhere="IsCheck=0";
} $Sql="Update {$Table} Set ".$StrWhere." Where Id=".$Id."";
$Result=$Mysql->Exe($Sql);
IF($Result!=1){
Exit(escapeshellarg($Result));
}
Die();
}
还有个 xajax 也可以,一样的道理。
一直没想到解决方法