1、PHP獲取顯示數(shù)據(jù)庫(kù)數(shù)據(jù)函數(shù)之 mysql_result()
目前成都創(chuàng)新互聯(lián)公司已為近千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)絡(luò)空間、網(wǎng)站托管、服務(wù)器租用、企業(yè)網(wǎng)站設(shè)計(jì)、會(huì)澤網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。
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()功能一樣,不過返回的不是數(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é)。
方法1、最常見的方法是:$_post['fieldname'];
說明:只能接收content-type:
application/x-www-form-urlencoded提交的數(shù)據(jù)
解釋:也就是表單post過來(lái)的數(shù)據(jù)
方法2、file_get_contents("php://input");
說明:
允許讀取
post
的原始數(shù)據(jù)。
和
$http_raw_post_data
比起來(lái),它給內(nèi)存帶來(lái)的壓力較小,并且不需要任何特殊的
php.ini
設(shè)置。
php://input
不能用于
enctype="multipart/form-data"。
解釋:
對(duì)于未指定
content-type
的post數(shù)據(jù),則可以使用file_get_contents(“php://input”);來(lái)獲取原始數(shù)據(jù)。
事實(shí)上,用php接收post的任何數(shù)據(jù)都可以使用本方法。而不用考慮content-type,包括二進(jìn)制文件流也可以。
所以用方法二是最保險(xiǎn)的方法
方法3、$globals['http_raw_post_data'];
說明:
總是產(chǎn)生
$http_raw_post_data
變量包含有原始的
post
數(shù)據(jù)。
此變量?jī)H在碰到未識(shí)別
mime
類型的數(shù)據(jù)時(shí)產(chǎn)生。
$http_raw_post_data
對(duì)于
enctype="multipart/form-data"
表單數(shù)據(jù)不可用
如果post過來(lái)的數(shù)據(jù)不是php能夠識(shí)別的,可以用
$globals['http_raw_post_data']來(lái)接收,
比如
text/xml
或者
soap
等等
解釋:
$globals['http_raw_post_data']存放的是post過來(lái)的原始數(shù)據(jù)。
$_post或$_request存放的是
php以key=value的形式格式化以后的數(shù)據(jù)。
但$globals['http_raw_post_data']中是否保存post過來(lái)的數(shù)據(jù)取決于centent-type的設(shè)置,即post數(shù)據(jù)時(shí)
必須顯式示指明content-type:
application/x-www-form-urlencoded,post的數(shù)據(jù)才會(huì)存放到
$globals['http_raw_post_data']中
$content?=?$_POST['data'];
$fp?=?fopen('/tmp/newfile.bin','w');
fwrite($fp,$content);
以上例子是在data參數(shù)上傳二進(jìn)制,并保存到/tmp/newfile.bin中,解析json用json_decode,然后把二進(jìn)制的那個(gè)值賦給content就可以
額 不好意思現(xiàn)在才看到 你看啊 你插入的字段是id這個(gè)id應(yīng)該是int類型吧 然后你$a='test’還有你的是insert返回的應(yīng)該是true 或者false 不應(yīng)該是一個(gè)資源
望采納!
先建立數(shù)據(jù)表并插入數(shù)據(jù)
這里假設(shè)已經(jīng)存在user表,并且有一條數(shù)據(jù)id:1,name:admin
那么讀取這個(gè)數(shù)據(jù)的過程是
$data?=?M('User')-select();
$this-assign('user',$data);
模板中的調(diào)取代碼是
volist?name="user"?id="v"
用戶名:{$v.name}?ID:{$v.id}
/volist
你可以將你獲取到的json數(shù)據(jù)貼上來(lái)看看.出現(xiàn)null絕大多數(shù)是因?yàn)楦袷接姓`引起的。
但是有時(shí)候也會(huì)由于編碼原因(比如,遠(yuǎn)程獲取其它鏈接地址的json數(shù)據(jù))