php使用mysql查詢數據庫已經有多少條數據使用sql的count函數實現。
成都創新互聯公司是一家集網站建設,樂都企業網站建設,樂都品牌網站建設,網站定制,樂都網站建設報價,網絡營銷,網絡優化,樂都網站推廣為一體的創新建站企業,幫助傳統企業提升企業形象加強企業競爭力。可充分滿足這一群體相比中小企業更為豐富、高端、多元的互聯網需求。同時我們時刻保持專業、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們為更多的企業打造出實用型網站。
示例代碼如下:
?php
//數據庫連接
$conn=mysql_connect("localhost","root","root");
if(!$conn){
die("對不起,數據庫連接失敗! ").mysql_errno();
}
//選擇數據庫
mysql_select_db("testdb");
//sql語句
$sql="SELECT COUNT(*) AS count FROM user";
//執行sql
$query=mysql_query($sql,$conn);
//對結果進行判斷
if(mysql_num_rows( $query)){
$rs=mysql_fetch_array($query);
//統計結果
$count=$rs[0];
}else{
$count=0;
}
echo $count;
?
返回的$count就是當前數據庫的記錄條數。
M('table')-count();
見手冊統計查詢:
方法說明
Count 統計數量,參數是要統計的字段名(可選)
Max 獲取最大值,參數是要統計的字段名(必須)
Min 獲取最小值,參數是要統計的字段名(必須)
Avg 獲取平均值,參數是要統計的字段名(必須)
Sum 獲取總分,參數是要統計的字段名(必須)
php按逗號分隔字符串使用explode函數,相關函數信息如下:
explode — 使用一個字符串分割另一個字符串
array?explode(string?$delimiter,?string?$string[,int?$limit])
此函數返回由字符串組成的數組,每個元素都是 ? ?string ? ?的一個子串,它們被字符串delimiter作為邊界點分割出來。
使用示例:
$str?=?'1,2,3,4,5,6';
$retArr?=?explode(',',?$str);
計算數組的大小,使用count函數,函數信息如下:
count — 計算數組中的單元數目或對象中的屬性個數
int?count(mixed?$var[,int?$mode?=?COUNT_NORMAL])
統計一個數組里的所有元素,或者一個對象里的東西。
使用示例:
$arr?=?array(1,2,3,4,5,6);
echo?count($arr);//6
綜上,整體代碼如下:
$str?=?'1,2,3,4,5,6';
$retArr?=?explode(',',?$str);
echo?count($retArr);//6
mysql_connect("localhost","root","123456") or
die("打開數據庫服務器失敗!"); //連接數據庫
mysql_select_db("a") or
die("打開數據庫a失敗!"); //打開數據庫,a為數據庫名
$sql = "select id from b"; //id為字段名,b為表名
$result=mysql_query($sql);
if(mysql_query($sql)) //判斷$sql語句是否執行
{
$num=mysql_num_rows($result); //取得包含id字段記錄的行數
echo "一共有".$num."個id"; }思想就是:根據含有ID的記錄(數據庫里一行內容稱為一條記錄)條數來確定ID的個數
其實我感覺你這個邏輯沒問題,代碼有點問題,我是這么認為的,代碼應該是這樣
$idzhi = rand(0,表中數據條數);
$data = $data['id']; // 我不明白你這里是什么意思
$arr = $m-where($data = $idzhi)-limit(8) -select();
不過我總感覺上面的有問題
$idzhi = rand(0,表中數據條數);
$arr = $m-where("id = $idzhi")-limit(8) -select();
不對的話就試試這個,我個人覺得這樣是對的,不明白你那個$data['id'];是干嘛用的
用sql查詢語句就能實現 例如 你的表名叫student?? 里面的性別字段是sex
查詢男生有多少人
select?count(*)?as?c?from?student?where?sex='男'
查詢女生有多少人
select?count(*)?as?c?from?student?where?sex='女'
然后在php里用MySQL_fetch_row就能得出結果了