//远程抓取获取数据 $("#update_ac").click(function() {$username = $("#username").text();$("#AC,#rank,#Submit,#solved,#solved2,#solved3").ajaxStart(function(){$(this).html("<span class="loading2"> </span>");});$.post("update_ac/username/"+$username,{},function($data){json = eval("(" + $data + ")");$("#Submit").html(json.data.Submit);$("#AC").html(json.data.AC);$("#solved,#solved2,#solved3").html(json.data.solved);$("#rank").html(json.data.rank); }),"json";});上面的jquery代码还算四楼比较清楚的,纠结我的就是那个json数据的接收
json = eval("(" + $data + ")");//eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。其实这个都还是前台,跨域抓取是用php的扩展simple_html_dom完成的(不清楚的可以到网上去搜一搜,基于PHP5开发的)
import("@.ORG.simple_html_dom");//thinkphp内导入扩展,你要把网上下载的代码改名为simple_html_dom.class.php放到APPNAMELibORG的目录下面$html = file_get_html("http://openoj.awaysoft.com/JudgeOnline/userinfo.php?user=".$username); //远程抓取了$ret = $html->find("center",0)->plaintext; //返回数据了。上面的代码只是核心代码,simple_html_dom扩展的还有很多功能。自己去了解吧。
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《smarty模板入门基础教程》及《PHP模板技术总结》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。