我已经做了研究,但找不到答案,所以现在我来这里寻求专业人士的建议。
我有一个查询,它在模型中返回一个数组:
$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["les_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((-第一次没有输入,所以它变成了一个空字符串,但提交后它是一个数组,仍然是数组。
在页面的Fresh加载中,没有以前的输入数据,因此通过set_value设置时,Form中的所有内容都是空的。