1、PHP獲取顯示數(shù)據(jù)庫(kù)數(shù)據(jù)函數(shù)之 mysql_result()
創(chuàng)新互聯(lián)建站主要從事成都網(wǎng)站制作、做網(wǎng)站、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)昭陽(yáng),十年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來(lái)電咨詢建站服務(wù):028-86922220
mixed mysql_result(resource result_set, int row [,mixed field])
從result_set 的指定row 中獲取一個(gè)field 的數(shù)據(jù). 簡(jiǎn)單但是效率低.
舉例:
$link1?=?@mysql_connect("server1",?
"webuser",?"password")?
or?die("Could?not?connect?
to?mysql?server!");
@mysql_select_db("company")?
or?die("Could?not?select?database!");
$query?=?"select?id,?name?
from?product?order?by?name";?
$result?=?mysql_query($query);
$id?=?mysql_result($result,?0,?"id");
$name?=?mysql_result($result,?0,?"name");
mysql_close();
注意,上述代碼只是輸出結(jié)果集中的第一條數(shù)據(jù)的字段值,如果要輸出所有記錄,需要循環(huán)處理.
for?($i?=?0;?$i?=?mysql_num_rows($result);?$i++)
{
$id?=?mysql_result($result,?0,?"id");
$name?=?mysql_result($result,?0,?"name");
echo?"Product:?$name?($id)";
}
注意,如果查詢字段名是別名,則mysql_result中就使用別名.
2、PHP獲取顯示數(shù)據(jù)庫(kù)數(shù)據(jù)函數(shù)之mysql_fetch_row()
array mysql_fetch_row(resource result_set)
從result_set中獲取整行,把數(shù)據(jù)放入數(shù)組中.
舉例(注意和list 的巧妙配合):
$query?=?"select?id,?
name?from?product?order?by?name";?
$result?=?mysql_query($query);
while(list($id,?$name)?
=?mysql_fetch_row($result))?{
echo?"Product:?$name?($id)";
}
3、PHP獲取顯示數(shù)據(jù)庫(kù)數(shù)據(jù)函數(shù)之mysql_fetch_array()
array mysql_fetch_array(resource result_set [,int result_type])
mysql_fetch_row()的增強(qiáng)版.
將result_set的每一行獲取為一個(gè)關(guān)聯(lián)數(shù)組或/和數(shù)值索引數(shù)組.
默認(rèn)獲取兩種數(shù)組,result_type可以設(shè)置:
MYSQL_ASSOC:返回關(guān)聯(lián)數(shù)組,字段名=字段值?
MYSQL_NUM:返回?cái)?shù)值索引數(shù)組.
MYSQL_BOTH:獲取兩種數(shù)組.因此每個(gè)字段可以按索引偏移引用,也可以按字段名引用.
舉例:
$query?=?"select?id,
name?from?product?order?by?name";
$result?=?mysql_query($query);
while($row?=?mysql_fetch_array
($result,?MYSQL_BOTH))?{?
$name?=?$row['name'];
//或者?$name?=?$row[1];
$name?=?$row['id'];
//或者?$name?=?$row[0];
echo?"Product:?$name?($id)";
}
4、PHP獲取顯示數(shù)據(jù)庫(kù)數(shù)據(jù)函數(shù)之mysql_fetch_assoc()
array mysql_fetch_assoc(resource result_set)
相當(dāng)于 mysql_fetch_array($result, MYSQL_ASSOC)
5、PHP獲取顯示數(shù)據(jù)庫(kù)數(shù)據(jù)函數(shù)之mysql_fetch_object()
object mysql_fetch_object(resource result_set)?
和mysql_fetch_array()功能一樣,不過(guò)返回的不是數(shù)組,而是一個(gè)對(duì)象.
舉例:
$query?=?"select?id,?name?
from?product?order?by?name";
$result?=?mysql_query($query);?
while($row?=?mysql_fetch_object
($result))?{
$name?=?$row-name;
$name?=?$row-id;
echo?"Product:?$name?($id)";
}
以上這些函數(shù)就是PHP獲取顯示數(shù)據(jù)庫(kù)數(shù)據(jù)函數(shù)的全部總結(jié)。
頭部加上超時(shí)控制,但對(duì)于很多服務(wù)器無(wú)效,因?yàn)榉?wù)器輸出超時(shí)很多在服務(wù)器控制,所以建議用cmd腳本方式運(yùn)行此程序:
?php
set_time_limit(0); //禁用腳本超時(shí)
//?Create?the?socket?and?connect
$socket?=?socket_create(AF_INET,?SOCK_STREAM,?SOL_TCP);
$connection?=?socket_connect($socket,'116。236。128。220',?14580);
//?Write?some?test?data?to?our?socket
if(!socket_write($socket,?"user?NoCall?pass?-1?vers?test?1.0?filter?b/B*?\r\n"))
{
echo("pWrite?failed/p");
}
if(!file_exists('socket_log.html')){
file_put_contents('socket_log.html',?'script
var?xx?=?setInterval(function(){ //每5秒刷新一次頁(yè)面
window.location.reload();
},?5000);
/script');
}
//?Read?any?response?from?the?socket
while($buffer?=?socket_read($socket,?64,?PHP_NORMAL_READ))
{
echo?json_encode($buffer);?//轉(zhuǎn)換為json數(shù)據(jù)輸出
//記入文件
file_put_contents('socket_log.html',?json_encode($buffer),?FILE_APPEND);
}
echo("pDone?Reading?from?Socket/p");
使用方法:用命令行方式運(yùn)行此腳本
php?script.php
腳本會(huì)一直運(yùn)行到接收數(shù)據(jù)結(jié)束,并持續(xù)將收到的數(shù)據(jù)寫(xiě)入socket_log.html文件。
在瀏覽器打開(kāi)socket_log.html頁(yè)面,此頁(yè)面會(huì)自動(dòng)每5秒刷新一次,來(lái)顯示最新的數(shù)據(jù)。
確保程序有權(quán)限創(chuàng)建及寫(xiě)入socket_log.html文件
我的思路是:
數(shù)據(jù)庫(kù)中新建一個(gè)表
is_showUpdate
字段:id、is_update
記錄 :id=1;is_update = false;
當(dāng)你的程序要修改顯示信息的時(shí)候(也就是展示數(shù)據(jù)),信息修改完畢將is_showUpdate表的記錄標(biāo)記為true
update is_showUpdate set is_update ='true' where id = 1;
展示頁(yè)面通過(guò)js定時(shí)器通過(guò)ajax每五秒調(diào)取下你的接口,接口只是查詢is_showUpdate 表的id為1的記錄 is_update 是否為true;如果該字段為true,則此接口將id=1的記錄的is_update修改為false,然后給前臺(tái)頁(yè)面反水?dāng)?shù)據(jù),刷新頁(yè)面;
點(diǎn)擊的時(shí)候用ajax去執(zhí)行生成程序,然后將生成的數(shù)據(jù)返回到頁(yè)面,主鍵編號(hào)獲取可以用mysql_insert_id();
你所涉及的問(wèn)題有兩方面。
1、php列表程序;把文章標(biāo)題、作者、日期、點(diǎn)擊率等列表顯示。
2、php分頁(yè)程序;對(duì)當(dāng)所有的列表項(xiàng)進(jìn)行分面,并按照分頁(yè)進(jìn)行顯示。
因?yàn)榱斜沓绦蚩梢哉f(shuō)是項(xiàng)目中比較重要的程序,就像電腦主板一樣,上面承載有很多的鏈接,相對(duì)有點(diǎn)復(fù)雜。簡(jiǎn)單一點(diǎn)跟你說(shuō),又怕你弄不清楚,說(shuō)詳細(xì)一點(diǎn),你可能又更糊涂了。下面把思路跟你說(shuō)一下吧:
(1)從數(shù)據(jù)庫(kù)中循環(huán)讀出符合要求的記錄,不斷賦值給數(shù)組,如$title[$i];
在這期間,要獲取記錄總數(shù)、總頁(yè)數(shù)、當(dāng)前頁(yè)數(shù)等內(nèi)容;
(2)做靜態(tài)頁(yè)面,循環(huán)做表格(行),從數(shù)組中不斷取值;
(3)顯示分頁(yè)的鏈接和跳轉(zhuǎn)行;
程序并不是很難,只是比較繁瑣。如果你急需現(xiàn)成的,就把數(shù)據(jù)庫(kù)相關(guān)信息發(fā)到我郵箱,幫你定制一個(gè),你自己再改。
JavaScript code?
12345678910var et = setInterval(function(){ $.ajax({ type: "GET", url: "獲取數(shù)據(jù)的 url", dataType: "html", success: function(data){ alert(data); } });},1000)
當(dāng)前名稱:php實(shí)時(shí)顯示數(shù)據(jù),php表格顯示數(shù)據(jù)庫(kù)信息
文章位置:http://redsoil1982.com.cn/article36/hsospg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、網(wǎng)站收錄、企業(yè)網(wǎng)站制作、網(wǎng)站策劃、App開(kāi)發(fā)、虛擬主機(jī)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)