Re: [請益] 核取方塊&MySql
基本上這只是舉例...
可見您沒去思考 陣列唷....
對單筆資料來說
其實連 for 或是 foreach 都不用寫的...
當您設定 選核方塊為 陣列時
假設您選了 唱歌 畫畫
當您送出後
php 已經產生了 request 與 post 陣列如下
Array
(
[q] => Array
(
[0] => 唱歌
[1] => 跳舞
)
)
那您在 插入資料庫後
能直接寫成
$sql = " insert into xxx
set 興趣1 = '".$_REQUEST['q']['0']."',
興趣2 = '".$_REQUEST['q']['1']."',
興趣3 = '".$_REQUEST['q']['2']."',
.................................ETC ";
另外
sql 除錯的部份
您可以 把sql echo 出來
先別急著 mysql_query
然後把您產生的 echo 出來的 sql
輸入資料庫後 看看錯誤在那了
phpmyadmin 應該 有裝吧 @@
※ 引述《sun1988 (風)》之銘言:
: 感謝你的教法,可我試過了,我顯示一直錯誤
: 這是選核取方塊部份
: <input type="checkbox" name="q[]" value="唱歌">
: <input type="checkbox" name="q[]" value="跳舞">
: <input type="checkbox" name="q[]" value="畫畫">
: 如果我想的沒錯
: $size = sizeof('q'); <=這裡應該是這樣?
: for($i=0 ; $i<$size ; $i++)
: {
: $SQL = "insert into chkb set ckb1 = '".q[$i]."'"; <=這裡應該是這樣?
: }
: 因為我這樣子弄完顯錯誤是
: Parse error: syntax error, unexpected '[' in C:\AppServ\www\q2.php on line 19
: 而第19行就是$SQL 這一段
: ※ 引述《clubflymf (clubfly)》之銘言:
: : 若您是使用 陣列 存值的話
: : for 跟 foreach 都可以使用
: : 也可以存入 1-3 的
: : 兩著差在一個用變數去比對
: : 一個是用key去比對
: : 舉個例子
: : 若您將興趣的值 用array接收
: : 如下
: : <input type="checkbox" name="ins[]" value="唱歌">
: : <input type="checkbox" name="ins[]" value="跳舞">
: : <input type="checkbox" name="ins[]" value="畫畫">
: : 送出資料後
: : 會有一個array產生 $_request 印出來看看 來$_post 也可以
: : $size = sizeof(? ); //自己動手找答案了...XD
: : for ($i =0 ; $i<$size ; $i++){
: : $SQL = "INSERT INTO XXX
: : SET XXX=".array[$i]."''
: : ............... ";
: : }
: : foreach ($array AS $KEY=> $val ){
: : $SQL = "insert into XXX
: : SET XXX='".$val['0'] ." '
: : ....................... ";
: : }
: : 把php 的array 當 tree 來看
: : 一個門牌一個值 應該很好懂的 ^ 0 ^
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.32.116.173
推
06/10 09:38, , 1F
06/10 09:38, 1F
推
06/10 09:46, , 2F
06/10 09:46, 2F
insert into 表單名稱 set 欄位1 = "值1",
欄位2 = "值2"
跟
insert into 表單名稱('欄位1','欄位2')
values('值1','值2')
兩者都可以使用
差別在於
用set 時
沒設定的欄位 會直接為資料庫 default
使用 原始的 table field 跟 values 若有少打發生錯誤時
會直接中斷 而 set 只是不更新 欄位
valus 用法 欄位一多 不好檢查
大概是這個樣子
※ 編輯: clubflymf 來自: 114.32.116.173 (06/10 10:08)
→
06/10 10:16, , 3F
06/10 10:16, 3F
推
06/10 10:18, , 4F
06/10 10:18, 4F
→
06/10 10:27, , 5F
06/10 10:27, 5F
推
06/10 10:33, , 6F
06/10 10:33, 6F
推
06/10 13:02, , 7F
06/10 13:02, 7F
→
06/10 13:02, , 8F
06/10 13:02, 8F
推
06/10 13:50, , 9F
06/10 13:50, 9F
→
06/10 13:50, , 10F
06/10 13:50, 10F
哈...我說的MAP 應該說 就直接 對陣列資料處理 XD
PHP的 ARRAY 蠻有趣的 只要有 KEY 就能對應相對的值
所以就可以少寫涵式嚕
一個 FOR 或 FOREACH 就能處理了 ^^
※ 編輯: clubflymf 來自: 114.32.116.173 (06/10 15:33)
→
06/10 15:54, , 11F
06/10 15:54, 11F
→
06/10 15:54, , 12F
06/10 15:54, 12F
→
06/10 15:54, , 13F
06/10 15:54, 13F
→
06/10 15:55, , 14F
06/10 15:55, 14F
推
06/10 17:01, , 15F
06/10 17:01, 15F
→
06/10 17:02, , 16F
06/10 17:02, 16F
推
06/11 20:41, , 17F
06/11 20:41, 17F
討論串 (同標題文章)
PHP 近期熱門文章
PTT數位生活區 即時熱門文章