作者Notte (why so serious ?)
看板PHP
標題[請益] 下拉式選單傳值 用$變數失敗?
時間Fri Jul 25 18:38:18 2014
以下是部分程式碼
<select name="p_sort" style="width: 136px">
<?php
while ($row = mysql_fetch_array($result)){
echo "<option value =".$row['p_sort'].">".$row['p_sort']."</option>\n";
}
?>
</select>
<input type="hidden" name="p_sort" value="<?php echo $row['p_sort']; ?>"/>
<input type="submit" value=" 確認新增 "/>
我的需求是把選單的值帶到下一頁 用code處理 新增進資料庫
有測試再下一頁echo post過去的選單值 沒有錯誤也沒值
(有測試value=隨便打 會有值 就是用上述變數不會)
等於是完全沒抓到選單的值
不知道是什麼樣的問題 還請教一下大家Orz...
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.230.96.128
※ 文章網址: http://webptt.com/m.aspx?n=bbs/PHP/M.1406284703.A.E6E.html
※ 編輯: Notte (61.230.96.128), 07/25/2014 18:43:30
1F:→ alog:O.Ohtml form內的input相關物件 name相同可能都會被複寫 07/25 19:11
2F:→ alog:一個form被真正submit到後端前,伺服器會把所有的 input物件 07/25 19:12
3F:→ alog:匯整起來再,按照http method送給伺服器 07/25 19:12
4F:→ alog:但只要name相同,可能瀏覽端/伺服端都會複寫或判斷錯誤 07/25 19:13
5F:→ alog:另外我覺得你的變數或物件的命名需要讓他有意義一點 07/25 19:14
6F:→ alog:像是 p_sort 很難看出他到底在幹嘛的 07/25 19:14
7F:→ alog:往後維護上可能會讓你或別人花很多時間理解 07/25 19:14
8F:→ johnny1972:hidden 那行拿掉 07/25 20:35
9F:推 hit1205:hidden 那行拿掉 +1,因為你的 p_sort 這個 name 重複了 07/25 21:21
10F:→ hit1205:會導致後面這個 hidden 欄位把前面下拉選單的值覆蓋過去.. 07/25 21:21
11F:→ up9cloud:伺服端可看php://input;避免複寫問題 07/26 16:52
12F:→ up9cloud:瀏覽器就不知道了...一般還是建議你不要重複名稱比較好.. 07/26 16:53
13F:→ Notte:謝謝各位指教 p_sort 想說是產品(p) 分類(sort) =.=" 07/26 18:08
14F:→ Notte:但是如果我hidden那行拿掉 這樣怎麼送到下一頁呢? 07/26 18:09
15F:→ Notte:喔喔喔 我剛剛試了一下 把hidden的name改掉就行了! 謝謝大家 07/26 18:13