⑴ php中如何實現實時更新數據呢jQuery
網頁一般是單向主動短鏈接,實時更新實在有些不便,即使一方掉線,另一方也不能及時感知。一般所謂的實時刷新,大多採用定時刷新(輪詢),或長輪詢的方式做,ajax用於更新數據確實是比較簡單方便的。
輪詢你就settimeout,長輪詢你就每次接收數據成功後,再來一次長輪詢。但你鏈接別人的數據,了解一下供應商的刷新機制、周期再做考慮。
當然這些都是偽實時,真的實時用http協議是不合適的,你得用flash插件做。而你用的是api供應商的東西,這條路就基本走不通了。
⑵ PHP中如何實時刷新並且更替顯示的數據
這邊是我剛做的項目中 模板是smarty使用jquery 實時刷新頁面 ,我也是菜鳥 ,僅供參考。
<script type="text/javascript">
var timelength = {/literal}{$vehicle_refresh}{literal} //定義刷新間隔
var timekeep = self.setInterval("autorefresh()",timelength); //將所要刷新函數定義給一個變數,你可能用不到。
function autorefresh(){
//這邊是你要刷新的數據內容 使用ajax從資料庫獲取就xing
}
⑶ 請問php怎樣抓取其它網站的動態數據,顯示在自己的網頁內並同步更新。
剛吃完午飯吧,來幫你實現一下吧。記得加分哦。
$url = "http://www.boc.cn/sourcedb/whpj/";
$queryServer = curl_init();
curl_setopt($queryServer, CURLOPT_URL, $url);
curl_setopt($queryServer, CURLOPT_HEADER, 0);
curl_setopt($queryServer, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($queryServer, CURLOPT_RETURNTRANSFER, true);
curl_setopt($queryServer, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($queryServer, CURLOPT_TIMEOUT, 30);
$html = curl_exec($queryServer);
$html = iconv('UTF-8','GBK//IGNORE',$html); //如果你需要是的數據是utf-8編碼的,這一行可以注銷,如果需要gbk編碼的,請保留.如果出現亂碼,就是一行的問題,你自己調著試吧
//echo $holder;exit; 此處可以輸出來測試.
$html = str_replace(array("\n","\r","\t"),"",$html);
$preg = '/<table\s+width=\"800\"[^>]+>(.*?)<\/table>/';
preg_match_all($preg,$html,$out);
//匹配每行
preg_match_all('/<tr[^>]+>(.*?)<\/tr>/',$out[1][0],$tr);
//匹配每個td
$result = array();
$match = '/<td.+>([^<]+)<\/td>/U';
foreach( $tr[0] as $key => $value ){
preg_match_all($match,$value,$arr);
$result[] = $arr[1];
}
//輸出測試,$result就是你要的數據,至於你要怎麼輸出顯示格式,那就隨心調就好了。
foreach( $result as $key => $value ){
echo implode("\t",$value);
echo "<br>";
}
exit;
⑷ php 網站怎麼做到,不刷新頁面,實時自動跟新數據
不刷新頁面更新數據,一般有兩個方法實現,都離不開JAVASCRIPT。現在最流行的就是AJAX,是用JS腳本連接資料庫更新數據,刷新頁面部分區域內容,不刷新整個網頁。另外一個是比較經典、但是兼容性更高的方法,設置一個隱藏的FRAME或者iFRAME幀,那個幀不斷刷新PHP頁面,頁面內容為改變可見幀內容的JS。