Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/272.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_Codeigniter_Checkbox_Filemaker - Fatal编程技术网

Php 如何让复选框项创建列表

Php 如何让复选框项创建列表,php,codeigniter,checkbox,filemaker,Php,Codeigniter,Checkbox,Filemaker,我是PHP新手,我正在从事的项目是一个codeigniter PHP表单,它可以写回FileMaker数据库 复选框应填充为列表字段 这是我的表格 <input name="fieldname[]" value="value1"<?php echo (set_checkbox('fieldname', $join->fieldname))?> type="checkbox" class="form-check-input"> value1 <input nam

我是PHP新手,我正在从事的项目是一个codeigniter PHP表单,它可以写回FileMaker数据库

复选框应填充为列表字段

这是我的表格

<input name="fieldname[]" value="value1"<?php echo (set_checkbox('fieldname', $join->fieldname))?> type="checkbox" class="form-check-input"> value1
<input name="fieldname[]" value="value2"<?php echo (set_checkbox('fieldname', $join->fieldname))?> type="checkbox" class="form-check-input"> value2
type=“checkbox”class=“表单检查输入”>值1
type=“checkbox”class=“表单检查输入”>值2
大约有7个复选框

我假设我必须设置一个
foreach
循环,让它进入FileMaker的字段,但不确定如何做到这一点

如果我去掉数组,最后选择的一个将进入布局


任何帮助都会很好。

大概,这些值反映了FileMaker中的价值列表。如果是这样,最好将valueList分配给一个变量:

    $ids=implode(",", $_REQUEST["fieldname"]);
    $result3=mysqli_query($dbh,'SELECT* FROM excel_tenant WHERE ID IN ("' . 
    $ids .    '") AND
    ManagerID =  "'.$_SESSION["ManagerID"].'" ORDER BY ID DESC ') or 
    die(mysqli_error($dbh));
$values = $layout->getValueList('pizzaToppings');
并在for循环中使用它:

foreach($values as $value)...
在if(isset())块中,向FileMaker发布返回分隔数组:

// value(s)!
if ($_POST['fieldname']) {
    $valueArray = implode("\r", $_POST['fieldname']);
}

// pass the array to setField()
$record->setField('filemakerField', $valueArray);

我算出来了。要将复选框输入退货分隔列表,请执行以下操作:

查看

在带有复选框的部分顶部


我不确定这是否是最好的方法,但它确实有效。

请包含处理
$\u POST['fieldname']
数组的当前代码。是的,使用foreach循环。如果您不知道如何编写foreach循环,那么最好删除这个问题,然后去做一些基础研究。最后,我们不知道你的预期结果是什么。如果“拿走数组”是指将
fieldname[]
切换为
fieldname
,则是,将覆盖值并仅保留最终值。仅供参考--您的问题有可能因不清楚或内容过于宽泛而被关闭,并且可能因未尝试编码而收到否决票。对不起,我已经进入了该项目,不确定该
$\u POST
的哪一部分与此相关。整个字段集(大约150个)放置在一个数组中,FileMaker命令发送,数据放置在适当的字段中。至于
foreach
循环,我不确定将所有复选框选项连接到一个列表中的最佳方法。我相信如果我知道怎么做,我就能想出如何把它发送到布局图上。我相信我们志愿者可以帮助你,但前提是你把拼图的所有部分都给我们。我们需要看到输入、编码尝试和预期结果的最小相关表示。帮助我们通过提高问题的质量来帮助您。我假设
$\u POST['fieldname']
元素就足够了。让我们看看你想用它们做什么。我们修复代码,而不是编写新代码。请阅读。
<?php $join->fieldname = explode("\n", $join->fieldname); ?>

// The actual input in the form
<input name="fieldnameXX[checkboxValue]" value="value" <?php echo (in_array('value', set_value('fieldname[value]', $join->fieldname)) ? ' checked="checked"': '')?> type="checkbox" class="form-check-input" > Value
$fieldnameZZ = $data['fieldnameXX'];
$data['fieldnameXX'] = FALSE;
unset($data['fieldnameXX']);
$sacraments = implode("\n", $fieldnameZZ);
$data['fieldname'] = $fieldnameZZ;