【发布时间】:2014-08-12 23:15:17
【问题描述】:
我正在 CodeIgniter 中创建某种博客。
博客的一个关键方面是帖子的创建和更新。
我想重用我用于创建帖子的视图来更新它。
为此,我想将发布数据传递给表单。
当发生验证错误时,表单应该显示传递给它的数据,而不是参数数据。
所以我想给表单传数据,但是发布后set_value方法必须覆盖参数。
到目前为止,我有这个表单来创建帖子。
如前所述,我想修改此表单,以便我可以重复使用它来更新帖子。
<h2><?php echo $title; ?></h2>
<?php
echo form_open('posts/' . $function);
echo form_fieldset();
echo '<legend>' . $title . '</legend>';
echo form_hidden('id', (isset($id) ? $id : '0'));
echo form_input('title', set_value('title', 'Title'), 'size="50"');
echo '<input type="date" name="date" id="date" value="' .
form_prep(set_value('date', date('Y-m-d'))) .
'" />';
echo form_textarea('content', set_value('content', ''));
echo form_input('category', set_value('category', 'Category'), 'size="50"');
echo form_input('keywords', set_value('keywords', 'Keywords'), 'size="50"');
echo form_submit('submit', 'Submit');
echo '<input type="reset" name="clear" value="Clear" />';
echo form_fieldset_close();
echo form_close();
?>
$function 应该持有 create 或 update。$title 是 Create post 或 Update post 并且不影响表单功能。
我已经为帖子 ID 添加了一个隐藏字段,在更新帖子时使用。
我想过使用发送到视图的参数并使用isset 来检查它们的存在,从而在创建或更新帖子之间产生差异。但这会与set_value 冲突。
我不太确定是否可以将数据发布到表单以及会产生什么后果。
【问题讨论】:
-
能否请您解释一下,
parameter data是什么意思。 ?
标签: php forms codeigniter validation