Foros del Web » Programando para Internet » PHP » CodeIgniter »

Codeigniter. Dudas con método $_GET y url amigable

Estas en el tema de Codeigniter. Dudas con método $_GET y url amigable en el foro de CodeIgniter en Foros del Web. Estoy comenzando a desarrollar una aplicación con Codeigniter y ya solucioné el dichoso asunto de quitar el index.php de la url . Pero me falla ...
  #1 (permalink)  
Antiguo 18/05/2010, 11:08
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 19 años, 3 meses
Puntos: 638
Codeigniter. Dudas con método $_GET y url amigable

Estoy comenzando a desarrollar una aplicación con Codeigniter y ya solucioné el dichoso asunto de quitar el index.php de la url.

Pero me falla en lo siguiente, me explico, quiero hacer un asistente de instalación del sistema vía web (estilo wordpress), para que en dos o tres pasos quede instalada la Base de Datos y creado un archivo de configuración que guarde los datos necesarios para el funcionamiento del sistema. Por lo que en cada paso la URL quedaría algo así: /install/?step=1, /install/?step=2 y así. Tengo el siguiente código:

Código PHP:
Ver original
  1. <?php
  2. //Resivo el valor de la variable $step via $_GET
  3. if (isset($_GET['step']))
  4.     $step = $_GET['step'];
  5. else
  6.     $step = 0;
  7.  
  8. //Comienzo el Switch
  9. switch ($step):
  10.     case 0 :
  11. ?>
  12. <p>Este es el paso 0</p>
  13. <p><a href="?step=1">Crear un archivo de configuraci&oacute;n</a></p>
  14. <?php
  15.     break;
  16.     //fin del step 0
  17.    
  18.     case 1 :
  19. ?>
  20. <p>Este es el paso 1</p>
  21. <?php
  22.     break;
  23.     //Fin del paso 1
  24. endswitch;
  25. ?>
El asunto es que no me cambia de vista, pero si el valor inicial de $step es 1, entonces si muestra Este es el paso 1.

Estuve mirando la documentación a ver si me enteraba de algo, pero si cambio $config['uri_protocol'] a "PATH_INFO" me da error, o sea, no se carga la página...

¿Debería cambiar algo en el .htaccess?

Gracias de antemano...
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #2 (permalink)  
Antiguo 18/05/2010, 11:33
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Codeigniter. Dudas con método $_GET y url amigable

parece ser que si, CI elimina las variables super-globales... solo siendo accesibles desde la librería input, me parece que en la configuración debe haber algo que controle dicho comportamiento...

lo ideal es que CI no elimine ninguna variable, espero... (:
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 18/05/2010, 12:41
Avatar de rogertm
Mod->Cuba
 
Fecha de Ingreso: julio-2005
Ubicación: /home/Cuba/Habana/rogertm/
Mensajes: 2.922
Antigüedad: 19 años, 3 meses
Puntos: 638
Respuesta: Codeigniter. Dudas con método $_GET y url amigable

Por ahora le he dado algo de solución, pero no me gusta. En el config.php la variable $config['enable_query_strings'] la he evaluado a TRUE y accedo de esta manera ?c=install&step=1 y funciona correctamente. Ahora me quedará hacer algún trabajito extra con el URL_Helper... creo

Thnx...
__________________
Friki y Blogger por Cuenta Propia:213
Twenty'em: Theming is Prose
  #4 (permalink)  
Antiguo 18/05/2010, 16:03
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Codeigniter. Dudas con método $_GET y url amigable

en todo caso no es necesario activar dicha opción y desactivar las urls amigables, tal ves sea mas sencillo usar el patrón MVC como se recomienda.. y/o hace uso de la librería de entrada:
Código PHP:
$this->input->get('step'); 
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: php
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:03.