打扰一下,如果这个问题已经到处问过,但我找不到有效的答案。
所以我有一个动态生成的表,它是通过从数据库中的表中选择行来生成的。
这是创建表格的视图文件。
除了标题之外的所有行都是根据数据库中表中找到的数据数创建的,因此,所有输入都具有类似
的名称<form class="form-horizontal" role="form" id="formDtKryw" method="POST" action="updKryw">
<div class="table-responsive form-group row">
<table class="table table-hover table-condensed table-bordered">
<thead class="text-center">
<tr>
<th>No</th>
<th>Nama</th>
<th>Telepon</th>
</tr>
</thead>
<tbody>
<?php $no = 0;
foreach ($dftr_crKryw as $data_crKryw):
$no_ktp[$no] = $data_crKryw->no_ktp;
?>
<input type="hidden" name="no_ktp[<?php echo $no; ?>]" id="no_ktp[<?php echo $no; ?>]" value="<?php echo $data_crKryw->no_ktp; ?>">
<tr>
<td><?php echo $no+1; ?></td>
<td><?php $this->db->select('nama,')->from('dt_prbd')->where('no_ktp', $data_crKryw->no_ktp);
$qry = $this->db->get();
if ($qry->num_rows() > 0) {
foreach($qry->result() as $data):
echo $data->nama;
endforeach;
}
?></td>
<td><?php
if ($data_crKryw->memo == NULL) {
?>
<select class="form-control input-sm" name="memo[<?php echo $no; ?>]" id="memo[<?php echo $no; ?>]">
<option value="">---Pilih---</option>
<option value="Memo 1">Memo 1</option>
<option value="Memo 2">Memo 2</option>
<option value="Memo 3">Memo 3</option>
</select>
<?php
}
else {
echo $data_crKryw->memo;
}
?></td>
</tr>
<?php
$no++;
endforeach;
}
?>
<input type="hidden" name="totData" id="totData" value="<?php echo $no; ?>">
<tr>
<td colspan="11" align="right"><button type="submit" id="submit" class="btn btn-primary">Simpan Data</button> <button type="reset" class="btn btn-danger">Hapus Form</button></td>
</tr>
</tbody>
</table>
</div>
</form>
这是应该捕获输入的控制器
function updKryw(){
$totData = $this->input->post('totData');
$no_ktp = $this->input->post('no_ktp');
$memo = $this->input->post('memo');
$frmUpdKryw = array(
'totData' => $totData,
'no_ktp' => $no_ktp,
'memo' => $memo
);
$this->load->view('display_data', $frmUpdKryw);
}
这是视图文件,它假设从表单
中查看所有捕获的信息<html>
<head></head>
<body>
<?php
for($x = 0; $x < $totData; $x++){
echo $totData . "<br>";
echo $no_ktp[$x] . "<br>";
echo $memo[$x] . "<br>";
}
?>
</body>
</html>
所有显示的只是$ totData,$ no_ktp [$ x]和$ memo [$ x]不会显示任何内容。
如果我的代码或逻辑中出现任何错误,任何人都可以提供帮助。
提前致谢。
=============================================== ==========================
编辑:我开始认为我的php引擎坏了。为什么呢?
即使这个简单的表格也不会显示任何内容。
form.php的
<form name="myForm" method="post" action="go.php">
<input type="text" name="name" value="firstname">
<input type="text" name="addr" value="firstaddr">
<button type="submit" name="submit" id="submit">save</button>
</form>
go.php
$name = $_POST[name];
$addr = $_POST[addr];
echo $name;
echo $addr;
答案 0 :(得分:0)
首先,我建议在将数据保存到$ frmUpdKryw数组之前进行调试
$this->input->post(NULL, TRUE); // returns all POST items with XSS filter
$this->input->post(); // returns all POST items without XSS filter
然后,如果数据不为空,则在
之前$this->load->view('display_data', $frmUpdKryw);
添加
var_dump($frmUpdKryw);
如果一切都很好,那么在视图的开头调试
var_dump($totData);
var_dump($no_ktp);
var_dump($memo);
如果一切都很好,那么问题就在你的循环中,所以你需要修复它。要么你知道你有问题在哪里:
希望它会有所帮助
答案 1 :(得分:0)
当我在同一个应用程序中解决另一个问题时,这个问题也得到解决,问题不在代码或逻辑中。所有代码都按预期工作。
这是解决方案的链接。不是我期望的解决方案,而是它的工作。