[请益] 有关ci的指导手册 - 动态新增新闻

楼主: alex90236 (洋葱)   2016-03-15 16:25:06
小弟是php新手,请教一下各位先进,
有关于指导手册上的这个动态新增新闻部分,
目前我的画面拼出了header+中间的表单+footer,然后我不知道怎么把资料加进去
sql内,前一个章节的部分(新闻模组)我有成功做出来,但也是我先手动把资料加进
sql内,才能把新闻模组这个章节的东西显示出来,现在的问题是
我路由设定按照官方教学,设定$route['news/create'] = 'news/create';
然后url上输入这个,我连到controller为news底下的create方法,
public function create()
{
$this->load->helper('form');
$this->load->library('form_validation');
$data['title'] = 'Create a news item';
$this->form_validation->set_rules('title', '标题', 'required');
$this->form_validation->set_rules('text', '内文', 'required');
if ($this->form_validation->run() === FALSE)
{
$this->load->view('templates/header', $data);
$this->load->view('news/create');
$this->load->view('templates/footer');
}
else
{
$this->news_model->set_news();
$this->load->view('news/success');
}
}
这边有个小问题,我不太懂为什么run这边他一定是False,
然后view底下的create.php这个检视页面如下
<h2>建立新闻项目</h2>
<?php echo validation_errors(); ?>
<?php echo form_open('news/create') ?>
<label for="title">标题</label>
<input type="input" name="title" /><br />
<label for="text">内文</label>
<textarea name="text"></textarea><br />
<input type="submit" name="submit" value="建立新闻项目" />
</form>
这边也有个小问题,想请问一下为什么他的form tag只有一个 </form>
我知道中间的form_open会创造一个表单,那这样他写的</form>用意为何?
然后最大的问题就是我画面上已经出现一个表单可以输入字段,
但是form上面没有action 来将字段内的值传送出去,要如何将值传进数据库??
拜托各位先进指教,看了一阵子找不到用法。
作者: xdraculax (首席怪叔叔)   2016-03-15 22:12:00
它是 form 跟 action 同一页,刚进没 post 一定 FALSE,html 的部分建议不要用它的,那是前端设计的工作,用 ci 的会造成前端设计的麻烦router 是转址用的,前后都是 news/create 不需要写 router
作者: fri13 (思考跳tone记性差)   2016-03-15 23:55:00
form的开头用程式产生是因为之后可能会用到CSRF的东西
作者: darkguy (riven)   2016-03-16 00:00:00
建议看看何谓mvc你判断跟呈现兜一起了
作者: fri13 (思考跳tone记性差)   2016-03-16 01:01:00
另外他只是教学 用法是参考而已 XD
楼主: alex90236 (洋葱)   2016-03-16 23:54:00
谢谢前辈们,稍后我再来做研究!!!!感激不尽

Links booklink

Contact Us: admin [ a t ] ucptt.com