Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: kur79 en 20 Marzo 2017, 19:07 pm



Título: Formulario que no sucede nada en codeigniter
Publicado por: kur79 en 20 Marzo 2017, 19:07 pm
Buenas, estoy tratando de hacer una pagina de registro para un proyecto en codeigniter pero por alguna razón no me funciona el formulario pero no se que me falla.

Tengo la vista en la ruta views/pages/registro.php:

Código
  1. <div class="container">
  2. <? echo form_open('pages/registrarUsuario'); ?>
  3. <div class="row">
  4. <div class="col-md-12">
  5. <div class="input-group">
  6. <span class="input-group-addon" id="basic-addon1">Nombre</span>
  7. <input type="text" class="form-control" placeholder="Tu nombre aquí" name="nnombre" aria-describedby="basic-addon1">
  8. </div>
  9. </div>
  10. </div>
  11. ........
  12. <div class="row">
  13. <div class="col-md-12">
  14. <button type="submit" class="btn btn-succes">Registrarse</button>
  15. </div>
  16. </div>
  17. </center>
  18. <br />
  19. <div class="row">
  20. <div class="col-md-12">
  21. <? echo validation_errors(); ?>
  22. </div>
  23. </div>
  24. <? echo form_close(); ?>
  25. </div>
  26.  



Mi controlador controllers/pages.php
Código
  1. <?php
  2.  
  3. class Pages extends CI_Controller {
  4.  
  5. function __construct(){
  6. parent :: __construct();
  7. $this -> load -> model('modelo_usuarios');
  8. }
  9.  
  10. .....
  11.  
  12. public function registrarUsuario(){
  13. echo "Holaaaaaaaaaa";
  14. $this -> form_validation -> set_rules('nnombre','name','required');
  15. $this -> form_validation -> set_rules('nsurname','surname','required');
  16. $this -> form_validation -> set_rules('ntelefono','telefono','required');
  17. $this -> form_validation -> set_rules('nemail','email','required');
  18. $this -> form_validation -> set_rules('npassword','password','required');
  19. $this -> form_validation -> set_rules('npassword2','password2','required');
  20.  
  21. if($this -> form_validation -> run() == FALSE){
  22. $this->load->view('registro');
  23.  
  24. $data['titulo']='Registro';
  25.  
  26. $this -> load -> view('templates/header',$data);
  27. $this -> load -> view('pages/registro',$data);
  28. $this -> load -> view('templates/footer',$data);
  29. }else{
  30. $p1 = $this -> input -> post('npassword');
  31. $p2 = $this -> input -> post('npassword2');
  32. if($p1 == $p2){
  33. $data = array(
  34. 'name' => $this -> input -> post('nnombre'),
  35. 'surname' => $this -> input -> post('nsurname'),
  36. 'telefono' => $this -> input -> post('ntelefono'),
  37. 'email' => $this -> input -> post('nemail'),
  38. 'password' => $this -> input -> post('npassword')
  39. );
  40.  
  41. $this -> modelo_usuarios -> registrar_usuario($data);
  42.  
  43. redirect('<?php echo base_url(); ?>index.php/pages/index');
  44. }else{
  45. //Las contraseñas no coinciden
  46. }
  47. }
  48. }
  49. }
  50. ?>
  51.  

Y un modelo que no viene al cuento

Tengo las lineas de config/autoload.php
Código
  1. $autoload['libraries'] = array('database','form_validation');
  2. $autoload['helper'] = array('url','form');

El formulario me lo crea correctamente pero al pulsar el botón no sucede nada (ni errores en consola ni el echo de la function registrarUsuario()). Ya no se qué me puede estar fallando, llevo estancado 3 días en este punto, a ver si alguien pudiese encaminarme.
Gracias