当我单击view
<td>
时,我想从表行中加载一个带有隐藏 id 的新页面作为帖子数据。 这是来自管理员/合同的代码:
$count = 0;
foreach ($data as $row) {
$id = $row->_id;
++$count;
echo "<tr>
"<input name='contract_id' id='contract_id' value='$id' hidden/>".
"<td class="id_td td_content">".$count."</td>".
"<td class='serial_td td_content'>".$row->_id."</td>".
"<td class='organisation_td td_content'>".$row->organisation."</td>".
"<td class='contract_td td_content'>".$row->title."</td>".
"<td class='lot_no_td td_content'>".$row->serial_no."</td>".
"<td class='pub_date_td td_content'>".substr($row->pub_date, 0, 10)."</td>".
"<td class='view_td'><a href='".site_url('Admin/contract_detail')."'>view</td>";
echo "</tr>";
}
这是来自管理控制器的代码:
public function contract_detail(){
$id = $this->input->post('contract_id');
$result['id'] = $id;
$this->load->view('admin/contract_detail', $result);
}
以及管理员/contract_detail视图中的代码:
<?php
echo "id = ". $id;
?>
问题是$id
回显时不输出任何内容。 我需要帮助;
这里的问题是您将用户重定向到contract_detail vie 锚元素 如果要将ID传递到contract_detail页面,则必须将其作为表单而不是链接发送
例如
将你更改为以下内容
foreach ($data as $row) {
$id = $row->_id;
++$count;
echo "<tr><form action='".site_url('Admin/contract_detail')."' method='post'>
"<input name='contract_id' id='contract_id' value='$id' hidden/>".
"<td class="id_td td_content">".$count."</td>".
"<td class='serial_td td_content'>".$row->_id."</td>".
"<td class='organisation_td td_content'>".$row->organisation."</td>".
"<td class='contract_td td_content'>".$row->title."</td>".
"<td class='lot_no_td td_content'>".$row->serial_no."</td>".
"<td class='pub_date_td td_content'>".substr($row->pub_date, 0, 10)."</td>".
"<td class='view_td'><button type='submit'>view</button></td>";
echo "</form></tr>";
}
"<input name='contract_id' id='contract_id' value='".$id."' hidden/>".
请尝试此行代码。我希望这有所帮助。