資料庫 PHP MySQL
請教各位,我的資料庫資料如下:-
-- 表的結構 `3g_district`
--
CREATE TABLE IF NOT EXISTS `3g_district` (
`d_id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`d_name` char(255) NOT NULL,
`d_level` tinyint(4) unsigned NOT NULL DEFAULT '0',
`d_pid` mediumint(8) unsigned NOT NULL DEFAULT '0',
`d_list` smallint(6) NOT NULL DEFAULT '0',
PRIMARY KEY (`d_id`),
KEY `upid` (`d_pid`,`d_list`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=45052 ;
--
-- 轉存表中的資料 `3g_district`
--
INSERT INTO `3g_district` (`d_id`, `d_name`, `d_level`, `d_pid`, `d_list`) VALUES
(1, '北京市', 1, 0, 0),
(2, '天津市', 1, 0, 0),
(3, '河北省', 1, 0, 0),
(4, '山西省', 1, 0, 0),
(5, '內蒙古自治區', 1, 0, 0),
(6, '遼寧省', 1, 0, 0),
(7, '吉林省', 1, 0, 0),
(8, '黑龍江省', 1, 0, 0),
(9, '上海市', 1, 0, 0),
(10, '江蘇省', 1, 0, 0),
(11, '浙江省', 1, 0, 0),
(12, '安徽省', 1, 0, 0),
(13, '福建省', 1, 0, 0),
(14, '江西省', 1, 0, 0),
(15, '山東省', 1, 0, 0),
(16, '河南省', 1, 0, 0),
(17, '湖北省', 1, 0, 0),
(18, '湖南省', 1, 0, 0),
(19, '廣東省', 1, 0, 0),
(20, '廣西壯族自治區', 1, 0, 0),
(21, '海南省', 1, 0, 0),
(22, '重慶市', 1, 0, 0),
(23, '四川省', 1, 0, 0),
我的conn.php檔案如下:
$mysql_server_name="localhost"; //資料庫伺服器名稱
$mysql_username="root"; //串連資料庫使用者名稱
$mysql_password=""; //串連資料庫密碼
$mysql_database="teafea"; //資料庫的名字
//串連到資料庫
$conn=mysql_connect($mysql_server_name,$mysql_username,$mysql_password);
//使用utf8編碼
mysql_query("set names 'utf8'");
//從表中提取資訊的sql語句
$str="select d_id,d_name from 3g_district";
//執行sql查詢
mysql_select_db($mysql_database,$conn);
$res=mysql_query($str,$conn);
//擷取查詢結果
$row=mysql_fetch_row($res);
//定位到第一條記錄
mysql_data_seek($res,0);
//迴圈取出記錄
while($row=mysql_fetch_row($res)){
for($i=0;$i
echo json_encode("$row[$i]");
}
}
我想要的效果是從資料庫裡取出來顯示效果:
d_id:d_name,d_id:d_name,
即是1:北京市,2:天津市,3:河北省
這樣一種效果
請教各位這樣的效果conn.php檔案怎麼寫呢?中間的冒號: 和單引號, 怎樣加上去呢?
回複討論(解決方案)
//迴圈取出記錄
$res = array();
while($row=mysql_fetch_row($res)){
$res[] = join(':', $row);
}
echo join(',', $res);
經測試出現以下錯誤:
Warning: mysql_fetch_row() expects parameter 1 to be resource, array given in E:\wamp\www\20\conn.php on line 29
29行就是 while($row=mysql_fetch_row($res)){這一行,
請問怎麼解決呢?
$conn=mysql_connect('localhost','root','寫上你的資料庫密碼');
$str="select d_name from 3g_district";直接搜尋name,id是自增長的,在顯示的時候你把id加上就能顯示出來了。
mysql_select_db($tr,$conn);
Warning: mysql_fetch_row() expects parameter 1 to be resource, array given in E
說 $res 是一個數組,怎麼可能。你確定你貼的代碼是最新的嗎?