这是我第一次使用codeigniter制作网站。我的问题如下:
我的视图文件包含:
<label class="control-label ">Insert Number of photos : </label>
<?php echo form_open('project_controller/no_of_pics'); ?>
<input name="no_pics" placeholder="Insert a number" type="text" value="<?php echo set_value('no_pics'); ?>" >
<input type='submit' name='submit' value='Insert' />
<?php echo form_close() ?>
<?php $no_pic=''; ?>
<?php echo $no_pic; ?>
<br><br>`
我的控制器文件包含:
public function no_of_pics(){
$this->load->view('control_panel');
$number=$this->input->post('no_pics');
$hoho = array('no_pic' => $number );
$this->load->view('control_panel',$hoho);
}
我在 .htaccess 文件中写了那行:
$route['project_controller/no_of_pics'] = "/project_controller/no_of_pics";
我的问题是我无法将no_pics返回视图,它应该通过控制器中的验证规则检查数字,但我想首先将数字返回视图文件
当我编写上面的代码时,我得到了数字,但在视图文件的普通页面中没有任何样式,并且在顶部我插入输入表单的数字甚至不是我想使用的地方。
2015-01-3我想我知道问题是什么,但我仍然不知道如何解决它.我在该控制器中还有其他方法 "project_controller"是:
public function project($page = 'home'){
if ( ! file_exists ('application/views/'.$page.'.php')){
show_404();
}
$this->load->view($page);
}
我在路线.php文件中写道:
$route['(:any)'] = 'project_controller/project/$1';
所以我认为问题是"function no_of_pics()"
向页面发送变量时无法正确查看页面,因为function project()
对此负责,那么现在的解决方案是什么?
您必须通过函数的第一个参数提供字段名称。第二个(可选)参数允许您为表单设置值。请在此处查看
set_value('no_pics',$no_pic);
你可以试试这个技术
$hoho['no_pic'] =$number;
$this->load->view('control_panel',$hoho);
我想然后你在查看页面上找到它。
您需要
从视图文件中删除此行
<?php $no_pic=''; ?>
它重置从控制器传递的变量。