he estado tratando con un problema por un tiempo. ¿Cómo puedo establecer los errores de validación usando el redireccionamiento en una función? Este es el código que tengo en mi controlador:¿Cómo se muestran los errores de validación usando la redirección en codeigniter?
function send()
{
$this->form_validation->set_rules('e-mail', 'Email', 'trim|required|valid_email');
$this->form_validation->set_rules('cellphone', 'Cellphone Number', 'trim|required|is_natural');
$this->form_validation->set_message('required', '%s is required.');
$this->form_validation->set_message('valid_email', '%s is not a valid Email Address');
$this->form_validation->set_message('is_natural', '%s can only contain numbers.');
$this->form_validation->set_error_delimiters('<li>', '</li>');
if($this->form_validation->run() == FALSE)
{
redirect ('/');
}
else
{
echo '<pre>';
print_r($_POST);
echo '<pre>';
}
}
Y este es el código que utilizo en mi opinión archivo:
<? if (validation_errors())
{
echo '<div id="validation_errors" title="Error:">';
echo '<div class="response-msgs errors ui-corner-all"><span>Errors:</span><br /><ul>';
echo validation_errors();
echo '</ul></div>';
echo '</div>';
}
?>
¿Hay alguna razón en particular por qué te gustaría volver a dirigir?Por lo general, cuando muestra errores, se muestran en la página en la que se ingresan para que puedan corregirse. Usted "podría" usar flashdata para almacenar el resultado de 'validation_errors()' que luego se puede acceder en la redirección a la página? – Gavin
Sí, por supuesto que lo sé. Pero la razón que me llevó a redirigir es que el formulario está en la página principal del sitio web y debe enviar todos los datos a un método llamado "enviar". Después de recibir cualquier tipo de error, debe volver al método anterior "índice". – Afshin
¿El método 'enviar' está siendo utilizado por cualquier otra cosa que no sea para la página' index'? – Gavin