【发布时间】:2016-10-14 02:15:59
【问题描述】:
我正在做一个项目,我正在使用 codeigniter 表单验证,但是有一个问题,我用 if 进行检查验证,但我的错误消息没有出现在视图中。
代码如下:
Ci控制器
public function envia(){
$this->form_validation->set_rules('nome', 'nome', 'required');
$this->form_validation->set_rules('descricao', 'descricao', 'required');
$this->form_validation->set_rules('preco', 'preco', 'required');
if ($this->form_validation->run() == TRUE){
$produtos = array(
"nome" => $this->input->post("nome"),
"descricao" => $this->input->post("descricao"),
"preco" => $this->input->post("preco"),
);
$this->load->model("produtos_model");
$this->produtos_model->salva($produtos);
redirect('/produtos/');
}else{
redirect('/produtos/novo');
}
}
查看
<div class="container">
<div class="row">
<?php echo validation_errors(); ?>
<h2>Cadastro</h2>
<?php echo form_open('produtos/envia');?>
<div class="form-group">
<?php
echo form_label("Nome:", "nome");
echo form_input(array(
"name" => "nome",
"id" => "nome",
"class" => "form-control"
));
?>
</div>
<div class="form-group">
<?php
echo form_label("Descricao:", "descricao");
echo form_input(array(
"name" => "descricao",
"id" => "descricao",
"class" => "form-control"
));
?>
</div>
<div class="form-group">
<?php
echo form_label("Preço:", "preco");
echo form_input(array(
"name" => "preco",
"id" => "preco",
"class" => "form-control"
));
?>
</div>
<div class="form-group">
<?php
echo form_submit(array(
"class" => "btn btn-primary",
"value" => "Cadastrar"
));
?>
</div>
<?php echo form_close();?>
感谢大家的关注。
【问题讨论】:
-
如果用户的提交没有通过验证,您必须将用户重定向到“produtos/novo”页面?
-
这似乎很有用bit of documentation
-
您应该加载视图而不是重定向以显示错误消息
标签: php codeigniter validation