Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在一个字符串中保存多个复选框_Php_Checkbox - Fatal编程技术网

Php 如何在一个字符串中保存多个复选框

Php 如何在一个字符串中保存多个复选框,php,checkbox,Php,Checkbox,我正在寻找一些帮助,将多个复选框中的值放在一个字符串中,用“,”分隔 这是我的代码: if (isset($_POST['submitKon'])) { $checkBox = $_POST[$holdID[$i]]; <?php $i=1; $virksomhedsID = $_SESSION['virkID']; $sql = "SELECT * FROM `hold` INNER JOIN `virksomheder` ON hold.virkID

我正在寻找一些帮助,将多个复选框中的值放在一个字符串中,用“,”分隔

这是我的代码:

if (isset($_POST['submitKon'])) {   
$checkBox = $_POST[$holdID[$i]];

<?php
    $i=1;
    $virksomhedsID = $_SESSION['virkID'];
    $sql = "SELECT * FROM  `hold` INNER JOIN  `virksomheder` ON hold.virkID = virksomheder.virkID
    WHERE hold.virkID = '$virksomhedsID' ORDER BY  `holdNavn` ASC";

    $result = mysql_query($sql);
    while($row = mysql_fetch_assoc($result))
    { 
    echo '<label for="check' . $row['holdNavn'] . '">' . $row['holdNavn'] . '</label>&nbsp;';
    echo '<input type="checkbox" checked="checked" id="' . $row['holdID'] . '" name="' . $row['holdID'] . '">&nbsp;&nbsp;';                         
    $i++;       
?>
if(isset($_POST['submitKon']){
$checkBox=$\u POST[$holdID[$i]];
有人能帮忙吗?
谢谢

您的复选框名称应全部设置为,例如:

 <input type="checkbox" name="check[]" value="{$row['holdID']}" />

两件事。您的
$i
变量从未被使用,这是故意的吗

此外,您还缺少while语句末尾的结束语
}

你在标签上写的
for=
是指
id=

这将遍历结果,并为每个结果打印一个标签和一个复选框。我在最后两个

<!-- language: lang-php -->
while($row = mysql_fetch_assoc($result))
{ 
    echo "<label id='check".$row['holdNavn']."'>".$row['holdNavn']."</label>&nbsp;
          <input type='checkbox' checked='checked' id='".$row['holdID']."' name='".$row['holdID']."'>,&nbsp;&nbsp;";                                
}

while($row=mysql\u fetch\u assoc($result))
{ 
回显“.$row['holdNavn']”
,  ";                                
}

您的代码可能不正确吗?我之所以这么问是因为你有php代码,而这些代码与问题相关。谢谢你的回答,我已经做了你建议的更改,但它仍然没有写任何东西。奇怪。。。您使用的浏览器是什么?还有PC、MAC、Linux?也可以尝试上面@vodich的建议,不确定这是否有效,但可能值得一试。谢谢,但是我应该把内爆放在哪里?在你发送表单的页面上。如果它是同一个页面,可能会像If(isset($POST['submitKon']){$checkBox=infrade(',',$POST['holdmyvalues']);好的,还有..$checkstring=“”;foreach($POST['holdmyvalues']as$checkBox.=$checkBox.,“;}echo rtrim($checkstring);我把它放在哪里?试试infrade()只有这样,你才能得到你想要的是的,但是在这段时间内还是在这段时间外?
<!-- language: lang-php -->
while($row = mysql_fetch_assoc($result))
{ 
    echo "<label id='check".$row['holdNavn']."'>".$row['holdNavn']."</label>&nbsp;
          <input type='checkbox' checked='checked' id='".$row['holdID']."' name='".$row['holdID']."'>,&nbsp;&nbsp;";                                
}