checkbox 用法
<input id="flagc" type ="checkbox" value="c" name="flags[]"<?php if(strpos($row['flag'],'c')!==false) echo "checked='checked'" ;?>/>推薦[c] <input id="flaga" type ="checkbox" value="a" name="flags[]"<?php if(strpos($row['flag'],'a')!==false) echo "checked='checked'" ;?>/>特薦[a] <input id="flagh" type ="checkbox" value="h" name="flags[]"<?php if(strpos($row['flag'],'h')!==false) echo "checked='checked'" ;?>/>頭條[h] <input id="flago" type ="checkbox" value="o" name="flags[]"<?php if(strpos($row['flag'],'o')!==false) echo "checked='checked'" ;?>/>熱門[o] <input id="flagn" type ="checkbox" value="n" name="flags[]"<?php if(strpos($row['flag'],'n')!==false) echo "checked='checked'" ;?>/>最新[n]
這裡strpos是檢測字符串中是否包含某個字符串!
strpos 返回整數(找不到返回邏輯假)
'true' 在數值比較中被轉換為 0
如果 $row['flag'] 第一個字符為 c 時,恰巧被匹配
其他字符返回的都不是 0,所以不會匹配成功。
當參數傳遞為字符串是如何轉變成數組與顯示輸出。
<?php $flags = explode(',',$v['flag']) ; foreach($flags as $x){ switch($x){ case c: echo "推薦[c]"; break; case a: echo "特薦[a]"; break; case h: echo "頭條[h]"; break; case o: echo "熱門[o]"; break; case n: echo "最新[n]"; break; } } ?>
數據庫插入
else if($_GET['do']=='editok'){ $id = $_POST['id']; $checked = $_POST['checked']; $flag = $_POST['flags']; $flags=implode(",",$flag); $sql = 'update djs_skstudent_voice set checked='.$checked.',flag="'.$flags.'" where id='.$id; $dsql->ExecuteNoneQuery($sql); echo "<script> window.location.href='student_voice.php';</script>"; }