Foros del Web » Administración de Sistemas » Apache »

mod_rewrite 3 variables htaccess

Estas en el tema de mod_rewrite 3 variables htaccess en el foro de Apache en Foros del Web. hola gente.. ando medio liado con esto... estoy intentando armar una pagina donde pueda recibir 3 variables, en el que no importa el orden por ...
  #1 (permalink)  
Antiguo 16/07/2011, 07:55
Avatar de softmaster  
Fecha de Ingreso: diciembre-2008
Mensajes: 230
Antigüedad: 15 años, 11 meses
Puntos: 12
mod_rewrite 3 variables htaccess

hola gente.. ando medio liado con esto... estoy intentando armar una pagina donde pueda recibir 3 variables, en el que no importa el orden por que van refinando los resultados a gusto del visitante y las variables son genericas (no tienen un valor establecido)..

Con esto logro pasar hasta 2 variables:

RewriteEngine on
RewriteRule ^seccion/$ carpeta/seccion/index.php [QSA]
RewriteRule ^seccion/(.*)/$ carpeta/seccion/index.php?variable1=$1 [QSA]
RewriteRule ^seccion/(.*)/(.*)$ carpeta/seccion/index.php?variable1=$1&variable2=$2 [QSA]
RewriteRule ^seccion/(.*)/(.*)/(.*)$ carpeta/seccion/index.php?variable1=$1&variable2=$2&variable3=$3 [QSA]

y queda asi:

Código:
dominio.com/seccion/variable1/
dominio.com/seccion/variable1/variable2
dominio.com/seccion/variable1/variable2/variable3
pero la tercer variable ya no puedo, me la recibe asi:

Código:
variable1: variable1/variable2
variable2: variable3
varibale3: (vacia no llega)
yo quiero que me queden en este fomato, pero no lo logro:

Código:
dominio.com/seccion/variable1/
dominio.com/seccion/variable1/variable2/
dominio.com/seccion/variable1/variable2/variable3/
alguien me puede dar una mano ?

Última edición por softmaster; 16/07/2011 a las 07:56 Razón: no se veia bien el codigo
  #2 (permalink)  
Antiguo 16/07/2011, 08:55
Avatar de softmaster  
Fecha de Ingreso: diciembre-2008
Mensajes: 230
Antigüedad: 15 años, 11 meses
Puntos: 12
Respuesta: mod_rewrite 3 variables htaccess

bueno ultimamente me estoy preguntando y respondiendo yo jajajja :P XD parezco un loco...

haciendo prueba y error (como lo vengo haciendo hace varios dias) lo logre hacer funcionar:

reemplazando (.*) por esto ([^/]+)

ahora las urls me quedan asi:

Código:
dominio.com/seccion/variable1/
dominio.com/seccion/variable1/variable2/
dominio.com/seccion/variable1/variable2/variable3/
Por que ? ni idea, tengo que leer un poco mas sobre las expresiones para entenderlo.. pero si alguien sabe por que, bienvenido sea...


dejo el htaccess por si le sirve a alguien:

RewriteEngine on
RewriteRule ^seccion/$ carpeta/seccion/index.php [QSA]
RewriteRule ^seccion/([^/]+)/$ carpeta/seccion/index.php?variable1=$1 [QSA]
RewriteRule ^seccion/([^/]+)/([^/]+)/$ carpeta/seccion/index.php?variable1=$1&variable2=$2 [QSA]
RewriteRule ^seccion/([^/]+)/([^/]+)/([^/]+)/$ carpeta/seccion/index.php?variable1=$1&variable2=$2&variable3=$3 [QSA]


abrazos !

Última edición por softmaster; 16/07/2011 a las 08:57 Razón: error codigo

Etiquetas: htaccess, mod_rewrite, 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:58.