在这个codeigniter模型中,我有这个查询测试输入中输入的值是否存在于数据库中..
function get_search_form() {
$match = $this->input->post('search1');
$this->db->where('numero',$match);
$this->db->where('inscris','non');
$q = $this->db->get('transaction');
if($q->num_rows()>0)
{
foreach($q->result() as $row)
{
$data[] = $row;
}
return $data;
}
}
看看控制器我想在view inscription.php
中显示输入值 function search()
{
$data['row'] = $this->site_model->get_search_form();
$this->load->view('acceuil/aside');
$this->load->view('acceuil/inscription', $data);
}
我的问题是如果在数据库中存在此值,如何在该视图中显示输入值和表单? 我试过这样但我需要帮助:
铭文观点:
<?=form_open('navigation/search');?>
<input type="text" name="search1" id="search1" required />
<input type='submit' value='Display' />
<?=form_close();?>
我尝试显示这样的表格,但我不知道如何显示输入的输入值
<?php
if( $row > 0 )
{
?>
les champs du formulaire ici....
<?php
}else
{ }
?>
答案 0 :(得分:0)
您可以访问$ data全局对象,例如此检查
<?php
if( isset($row))
{
foreach($row as $v){
//Do the operations here
}
}else
{
//Do the operations here
}
?>
答案 1 :(得分:0)
在您的视图中,您可以检查变量$row
是否为空(因为在没有找到行时它将为null):
if ($row !== null) {
// do stuff
}
如果没有找到行,您可以修改模型函数以返回其他值,例如,通过将$ data设置为空数组:
function get_search_form() {
$match = $this->input->post('search1');
$this->db->where('numero',$match);
$this->db->where('inscris','non');
$q = $this->db->get('transaction');
$data = array(); // <--- here
if($q->num_rows()>0)
{
foreach($q->result() as $row)
{
$data[] = $row;
}
return $data;
}
}
然后在视图中您可以简单地循环数据:
foreach($row as $r) {
// do stuff
}
或者你可以内爆数组用作输入值:
<input type="text"
name="search1"
id="search1" required
value="<?php echo implode(' ', $row); ?>" />
你也可以在这里使用html实体,以防双引号出现在你的模型函数返回的内容中(我不知道它返回的内容)。