一维数组提交后变成多维数组

Single dimensional array becomes multidimensional after submit

我已经研究过了,找不到答案,所以我现在在这里寻求专业人士的建议。

我有一个查询 returns 模型中的一个数组:

$sql = "SalesList ";
$sql = $sql."'".$current_company_code."', ";  
$sql = $sql."'".trim($current_user_id)."', "; 
$sql = $sql."'".$as_date."', ";  
$sql = $sql.$language_no; 

$DB=$this->load->database($current_database,TRUE);
$query = $DB->query($sql); 

return $query->result();

在控制器中:我将结果传递给 $data['sales_list'] 并加载到视图

$data['sales_list'] = $this->SalesList->GetSalesList($current_database,$current_company_code,$current_user_id,date('Y-m-d 23:59:59'),$language_no);
$this->load->view('Sales_Record', $data);

在视图中:

  <?php foreach ($sales_list as $record): ?>
         <input type="hidden" name="sp_name_d[]" id="sp_name_d[]" value="<?php echo set_value('sp_name_d[]',trim($record->sp_name));?>"/>                      
   <?php endforeach; ?>

问题: 提交后,相同的编码(首次加载时没有问题)提示以下错误:

A PHP Error was encountered
Severity: Notice

Message: Array to string conversion

Line Number: 39

Array"/>

第39行指的是:

<input type="hidden" name="sp_name_d[]" id="sp_name_d[]" value="<?php echo set_value('sp_name_d[]',trim($record->sp_name));?>"/>  

需要帮助。谢谢你。 此致,朵朵程序员

[更新]问题原因(菜鸟错误): 我有一些代码在 set_value 中使用索引(用于单选按钮参考)导致多维数组:

<input type="radio" name="status_d[<?php  echo $counter;?>]" id="status_d[]" value="1" <?php echo set_value('status_d['.$counter.']', '1', $record->status==1); ?> checked />

解决方法: 在视图中添加索引 set_value:

<input type="hidden" name="sp_name_d[]" id="sp_name_d[]" value="<?php echo set_value('sp_name_d['.$counter.']',trim($record->sp_name));?>"/>  

问题是: set_value() - 第一次没有输入,所以它变成了一个空字符串,但是提交后它是一个数组,仍然是数组。

在新加载页面时,没有以前的输入数据,因此在通过 set_value 设置时,表单中的所有内容都是空的。