私はcodeigniterフォームの検証を使用していますが、問題がありました。チェックの検証をifに入れましたが、エラーメッセージが表示されませんそれはすべきだ。フォームcodeigniterの妥当性検査でエラーメッセージが表示されない
以下のコード:
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」ページにリダイレクトする必要がありますか? – Terminus
これは便利な[ドキュメントのビット]のようです(https://www.codeigniter.com/userguide3/libraries/form_validation.html#the-controller) – Terminus
あなたはヘルプのためにエラーメッセージ –