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>";
}