html:
<select></select>
<code> <option name="new_class_info" value="recommend">推荐</option> </code>
php:
$sql="INSERT INTO info_look (new_class) values ('$_POST[new_class_info]')";
昨天發了一個貼,感謝大家的幫忙,後面還有一個問題當時還沒想到,就是我$_POST[new_class_info]這裡要獲取的是value值,這裡我要怎麼寫,如果寫成[new_class_info.value] ,php裡的. 不是+ 的意思嗎?求解答
ps:還有朋友提醒我用戶輸入變數不能直接插入sql,因為我是初學者,這裡還沒考慮安全問題,所以當前只需要傳入value,能讓我的資料庫記錄就可以了,謝謝大家
html:
<select></select>
<code> <option name="new_class_info" value="recommend">推荐</option> </code>
php:
$sql="INSERT INTO info_look (new_class) values ('$_POST[new_class_info]')";
昨天發了一個貼,感謝大家的幫忙,後面還有一個問題當時還沒想到,就是我$_POST[new_class_info]這裡要獲取的是value值,這裡我要怎麼寫,如果寫成[new_class_info.value] ,php裡的. 不是+ 的意思嗎?求解答
ps:還有朋友提醒我用戶輸入變數不能直接插入sql,因為我是初學者,這裡還沒考慮安全問題,所以當前只需要傳入value,能讓我的資料庫記錄就可以了,謝謝大家
你的name
屬性應該要設定在select
元素上。當提交表單時,表單元素會作為名值對提交,對於select
元素就是select
的name
屬性的值作為名,選取的option
元素的value
屬性的值作為值。
例如
<code class="html"><select name="foo"> <option value="bar1"> <option value="bar2"> </select></code>
如果選取第一個選項提交,就會提交foo=bar1
的名值對。
如果用post方法提交,在php中就可以用$_POST
數組來訪問,比如上面表單就會有$_POST['foo']
這個成員,值就是'bar1'
。
樓上已經說得很好,不曉得樓主理解沒有,我來多嘴補充一些,樓主說得<select></select>
這個是包含在<form></form>
(表單)這個標籤下面,<form></form>
定義了action 屬性表示表單要提交的地方,也就是你的PHP。提交的時候,表單內的東西組成key-value這樣的鍵值對傳遞給你的PHP,key就是這個標籤的name屬性,value就是value屬性,所以傳遞到PHP那邊POST的類似這個[' new_class_info' => 'recommend']
,所以你只要取得這個陣列new_class_info項目就可以了例如:$_POST['new_class_info']