如何在codeigniter中获取值数组? 当我得到值post post数组并回显值时,我有问题。提交时如何显示帖子价值? 这里出现错误信息:
A PHP Error was encountered
Severity: Notice
Message: Uninitialized string offset: 0
Filename: controllers/blablabla
查看html:
<?php $i=0; foreach ($doc as $row) { ?>
<label>
<input name="size[<?php echo $i; ?>]" type="checkbox" value="<?php echo $row['doc']; ?>"> <?php echo $row['doc']; ?>
</label>
<?php $i++; } ?>
控制器:
$size = $this->input->post('size');
for ($i=0; $i<count($doc); $i++)
{
echo $size[$i];
}
答案 0 :(得分:3)
更改复选框的名称,如下所示,
<?php foreach ($doc as $row) { ?>
<label>
<input name="size[]" type="checkbox" value="<?php echo $row['doc']; ?
>"> <?php echo $row['doc']; ?>
</label>
<?php } ?>
在post方法中,
$size_arr = $this->input->post('size');
foreach($size_arr as $v){
echo $v;
}
如果由于某种原因它无法正常工作,请查看,
$size_arr = $_POST['size'];
foreach($size_arr as $v){
echo $v;
}
修改强>
另一种选择,
$arr = $this->input->post();
$size_arr = $arr['size'];
foreach($size_arr as $v){
echo $v;
}
核心版,
$arr = $_POST;
$size_arr = $arr['size'];
foreach($size_arr as $v){
echo $v;
}
答案 1 :(得分:2)
不需要在视图文件中的复选框名称中使用$ i只需要一个数组
查看档案
<?php foreach ($doc as $row) { ?>
<label>
<input name="size[]" type="checkbox" value="<?php echo $row['doc']; ?>"> <?php echo $row['doc']; ?>
</label>
<?php } ?>
控制器
$countsize = count($this->input->post('size'));
for ($i=0; $i<$countsize ; $i++)
{
echo $this->input->post('size')[$i];
}
答案 2 :(得分:1)
您的html表单代码应如下所示。
<input name="size[<?php echo $i; ?>]" type="checkbox" value="<?php echo $row['doc']; ?>">
在内部控制器中,您的代码应如下所示。
$size = $this->input->post('size');
foreach($size as $sa)
{
echo $sa;
}
答案 3 :(得分:0)
这个对我有用
在查看文件中
<div id="area_input">
<div id="inputan" class="form-inline">
<div class="form-group col-sm-6">
<input type="text" class="form-control" name="size[]" placeholder="ukuran">
</div>
<div class="form-group col-sm-6">
<input type="text" class="form-control" name="size[]" placeholder="ukuran">
</div>
<div class="form-group col-sm-6">
<input type="text" class="form-control" name="size[]" placeholder="ukuran">
</div>
<div class="form-group col-sm-6">
<input type="text" class="form-control" name="size[]" placeholder="ukuran">
</div>
</div>
</div>
您可以根据需要重复输入。
在控制器文件中
$data = array(
'size' => $this->input->post('size'),
);
您可以使用 print_r($data) 检查数组的结构,或使用以下方法打印它们:
foreach ($data as $key => $value) {
foreach ($value as $detail) {
echo $detail;
echo "<br>";
}
}