作者cbolong (波波龍)
看板PHP
標題[請益] php裡回傳值問題
時間Wed Mar 25 20:23:50 2009
以下是程式碼片段
//連接MYSQL和資料庫
$link=mysql_connect($host,$user,$pass);
$db=mysql_select_db($database,$link);
if($link)
{
$sel_str="Select * From chain";
$result=mysql_query($sel_str,$link);
$number=mysql_num_rows($result); //計算出有幾筆資料
//以下是印出目前有的鏈名稱
echo '<form id="form" name="form2" method="post" action="">';
echo '<select name="sel_name">';
for($x=0;$x<$number;$x++)
{
$data[$x]=mysql_fetch_array($result,MYSQL_NUM); //把資料用數值當索引
echo '<label>';
echo "<option value='$data[$x][0]'>".$data[$x][0]."</opion>";
echo '</label>';
}
echo '<label>';
echo '<input type="submit" name="Submit2" value="送出" />';
echo '</label>';
echo '</form>';
}else{
echo "DB connect false";
}
$sel_name=$_POST["sel_name"];
echo $_POST["sel_name"];
我要問的幾個問題是
1.
$data[$x]=mysql_fetch_array($result,MYSQL_NUM);
這裡不是把資料庫的資料用索引值使用
那是不是代表說如果是
x x x x
x x x x
這樣的話就要[2][4]的陣列來存
可是我用一維的也可以?
接下來讀取出來時一定要用[][]來表示
才可以取出來
為什麼會這樣呢
2.
我for迴圈是把資料庫的第一欄用選項方式表示出來
echo "<option value='$data[$x][0]'>".$data[$x][0]."</opion>";
之後送出後
我最下面那一行是印出你選取的資料
可是
出錯了
他印出來不是你所選取的
而是 Array[0] 這個
我在猜沒拿到資料吧
為什麼會這樣呢?
麻煩版友幫忙解惑一下
再解說一下第二點
我第二點的功能是
假設我資料裡有A B C 三筆資料
我就用option功能顯示 A B C這三個選項
然後選好後 按送出
然後再寫 $data=$_post['$select'] //select是option裡所選的
然後再echo印出你選的是什麼
可是我一直印出Array那個 (上面那個回覆)
所以我想問這個問題
--
ξ
○-
<(╯ 這 , 就是人生呀。
■)﹥
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.134.50.144
推 w94320 :fetch_array是用欄位名稱當索引,fetch_row才是用數字 03/25 20:49
推 kusoayan :fetch_array也能用數字作為索引吧 ? 03/25 20:57
推 michaelclow :fetch_array 預設是數字和欄位名稱都可以當索引 03/25 20:59
→ cbolong :我有查過書是也能用數字 改MYSQL_NUM就好 03/25 21:02
→ cbolong :有人知道第二個問題嗎? 03/25 22:20
※ 編輯: cbolong 來自: 220.134.50.144 (03/25 22:29)
※ 編輯: cbolong 來自: 220.134.50.144 (03/25 22:32)
推 kusoayan :先echo $data[$x][0] 看有沒有抓到 03/25 22:38
→ cbolong :一開始echo裡有抓到 但選取那裡就出了點問題 03/25 23:22
→ cbolong :我找不出問題在哪 03/25 23:22