我正在学习教程,但收到此错误: 无法访问与您的字段名称对应的错误消息
我已经搜索过,但找不到解决方案。程序非常简单: Cformulario.php
<?php
class cFormulario extends CI_Controller{
function __construct(){
parent::__construct();
$this->load->helper(array('form', 'url'));
$this->load->library('form_validation');
}
function mostrarDatos(){
$this->form_validation->set_rules('txtnom', 'Nombre', 'trim|required|min_lenght[3]|max_lenght[50]');
$this->form_validation->set_rules('txtmail', 'Correo', 'trim|required|valid_email');
if($this->form_validation->run()==FALSE){
$this->load->view('vformulario');
}
else{
$datos=array(
'nombre' => $this->input->post('txtnom'),
'edad' => $this->input->post('txted'),
'correo' => $this->input->post('txtmail')
);
$this->load->view("vformulario", $datos);
}
}
}
?>
vformulario.php
<body>
<h1>Información Personal</h1>
<br>
<div id="error">
<?php
echo validation_errors();
?>
</div>
<br>
<?php
echo form_open('cFormulario/mostrarDatos');
?>
Nombre
<input type="text" name="txtnom" id="txtnom" value="<?php echo set_value('texnom', '');?>"/>
<br>
Edad
<input type="text" name="txted" id="txted" />
<br>
Correo
<input type="text" name="txtmail" id="txtmail" value="<?php echo set_value('texmail', '');?>"/>
<br>
<input type="submit" name="Mostrar datos" />
<input type="reset" name="Restablecer" />
<?php
echo form_close();
?>
<br>
<div id="resultado">
<?php
if(!empty($nombre) && !empty($edad) && !empty($correo)){
echo "Nombre: $nombre<br>";
echo "Edad: $edad<br>";
echo "Correo: $correo<br>";
}
?>
</div>
</body>
奇怪的是,当我打字时它工作正常。但是当我试图显示一些结果时,错误来了。
是的,您可以在字段旁边添加 form_error("field_name"( 以获取错误消息。
例如-
<?php
echo form_open('cFormulario/mostrarDatos');
?>
Nombre
<input type="text" name="txtnom" id="txtnom" value="<?php echo set_value('texnom', '');?>"/>
<br>
Edad
<input type="text" name="txted" id="txted" />
<?php echo form_error('txted'); ?>
<br>
Correo
<input type="text" name="txtmail" id="txtmail" value="<?php echo set_value('texmail', '');?>"/>
<?php echo form_error('txtmail'); ?>
<br>
<input type="submit" name="Mostrar datos" />
<input type="reset" name="Restablecer" />
<?php
echo form_close();
?>