我正在寻找stackoverflow,但我找不到我需要的东西。我需要将用php发送的复选框数据插入mysql,如22111,22332,12123,121132。
我有这个代码(在网站上找到)
<?php
foreach($_POST['idecod'] as $check) {
$sel = $check.',';}
$contenedor = "UPDATE inmdes SET idecod='$sel'";
$insertdb = mysql_query($contenedor) or die(mysql_error());
?>
当然,我将复选框作为数组:
<input name="idecod[]" type="checkbox" value="<?php echo $rs[0]; ?>" />
如何插入多个复选框,如2211223,2211223,1212233,12332122或者如果只是一个222111222 .. ???
我怎样才能将它们作为一个数组进行检索,因为我需要使用类似这样的东西
<? php if (in_array('2211223', $idecod)) echo "checked"; ?>
自动检查上一个复选框。!
提前致谢
罗伯特
更新
我有一个选项列表。这些选项使用复选框执行/ des。我需要:
1.-能够注册选项(由于@prodigitalso已解决) 2.-能够自动检查先前检查过的复选框。
所以,我在表(mysql)中有这样的代码221122,221133,225566,445522。我需要脚本来检查先前检查过的代码(表中的代码)并检查它们。例如:
我看到了5个选项221122,221133,225566,445522和663322.我只检查了4个(221122,221133,225566,445522)并在mysql数据库中进行了更新。
我再次来到选项页面。但以前我检查过221122,221133,225566,445522。所以脚本检查EACH复选框。所以自动检查选项221122,221133,225566,445522但它没有检查663322。
RS [0]是代码,例如221122。
答案 0 :(得分:1)
您可以使用implode
和explode
功能执行此操作
$string = implode(",", $array);
$array = explode(",", $string);
答案 1 :(得分:0)
您应该使用explode
和implode
。
if(isset($_POST['idecod']) && !empty($_POST['idecod'])) {
$sel = implode(',', $_POST['idecod']);
$contenedor = sprintf("UPDATE inmdes SET idecod='%s'", mysql_real_escape_string($sel));
$insertdb = mysql_query($contenedor) or die(mysql_error());
}
然后当你把它们拉出来时,只需使用:
$idecodArr = explode(',', $row['idecod']);