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

.htaccess y variables $1 y $2

Estas en el tema de .htaccess y variables $1 y $2 en el foro de Apache en Foros del Web. Buenas tardes caballeros. Pues mi duda es la siguiente, tengo mi fichero ht al que le paso dos variables por GET, $1 y $2 pero ...
  #1 (permalink)  
Antiguo 19/07/2010, 09:27
 
Fecha de Ingreso: junio-2008
Mensajes: 34
Antigüedad: 16 años, 6 meses
Puntos: 0
.htaccess y variables $1 y $2

Buenas tardes caballeros.

Pues mi duda es la siguiente, tengo mi fichero ht al que le paso dos variables por GET, $1 y $2 pero no se como utilizar htaccess para trabajar con $2, que es una son palabras clave (tags).

Lo que quiero es que el usuario ponga los tags (en este caso de una vivienda) y salga la ficha de la vivienda, mostrando en la barra de direcciones $2 pero trabajando con sql con $1.

En fin, a ver si alguien me puede echar una mano.
Muchas gracias de antemano.

Un saludo
  #2 (permalink)  
Antiguo 19/07/2010, 09:32
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: .htaccess y variables $1 y $2

¿Qué haz hecho?
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 19/07/2010, 09:38
 
Fecha de Ingreso: junio-2008
Mensajes: 34
Antigüedad: 16 años, 6 meses
Puntos: 0
Respuesta: .htaccess y variables $1 y $2

Con este codigo me sale si pongo:
www.xxx.com/ficha=62_sevilla duplex

Código:
Options +FollowSymLinks
RewriteEngine on

RewriteRule ^ficha=(.*)_(.*)/?$ ficha.php?id=$1&tags=$2 [QSA]

AddHandler application/x-httpd-php .php .php4 .php3 .html .htm
AddType application/x-httpd-php .html
AddType application/x-httpd-php .htm
pero solo quiero que poniendo www.xxx.com/ficha=sevilla duplex me salga la ficha de esta vivienda, pero no me sale, tengo que poner el id aparte de los tags.

Sabeis como hacerlo?
Muchas gracias por la ayuda.
  #4 (permalink)  
Antiguo 19/07/2010, 09:46
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: .htaccess y variables $1 y $2

Ya casi lo tienes solo es cuestión de añadir cuáles son opcionales con el símbolo de pregunta (?). Ejemplo
Código Apache:
Ver original
  1. RewriteEngine On
  2. RewriteRule ^ficha=(.*)_?(.*)?/?$ b.php?id=$1&tags=$2 [L,QSA]
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 19/07/2010, 10:00
 
Fecha de Ingreso: junio-2008
Mensajes: 34
Antigüedad: 16 años, 6 meses
Puntos: 0
Respuesta: .htaccess y variables $1 y $2

Creo que no me explicado bien.
Lo que estoy buscando es que cuando yo meta por ejemplo: ww.xxx.com/ficha=62_sevilla-duplex Me gustaria que el usuario solo tubiera que poner esto: www.xxx.com/ficha=sevilla-duplex, como ves le paso la id 62 que es la de la vivienda en cuestion, pero quiero que solo tenga que meter sevilla-duplex que es la segunda variable $_GET que le envio

Con el codigo que me has pasado:
RewriteRule ^ficha=(.*)_?(.*)?/?$ ficha.php?id=$1&tags=$2 [L,QSA]
Tengo que meterle: www.xxx.com/ficha=62_sevilla-duplex
Si pongo www.xxx.com/ficha=sevilla-duplex no me muestra ninguna ficha.

Perdona si no me explico bien pero llevo todo el dia con esto y ya no se ni como me llamo, si tengp perro o caiman... nose jejeje

Gracias de antemano.
  #6 (permalink)  
Antiguo 19/07/2010, 10:03
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: .htaccess y variables $1 y $2

Apache sigue instrucciones cronológicamente. Puedes invertir las variables o puedes hacer esa lógica en PHP para que verifique lo que haya puesto el usuario.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #7 (permalink)  
Antiguo 19/07/2010, 10:11
Avatar de ferny
Il capo della mafia
 
Fecha de Ingreso: febrero-2002
Ubicación: Al final del cable
Mensajes: 10.080
Antigüedad: 22 años, 10 meses
Puntos: 55
Respuesta: .htaccess y variables $1 y $2

Hola

Lo que tienes que hacerte es programar en el php una función que transforme el tag en el id, es decir, tú recibes tan sólo la variable $tags="sevilla-duplex", que sería lo que el usuario mete, y esa función lo que hace es una búsqueda contra tu base de datos para ver qué $id corresponde a tu $tags. Mal y rápido:

Código MySQL:
Ver original
  1. mysql_query("SELECT id FROM TuTabla WHERE tag = ' . $tags . '");
  2. etc...;

O sea, sólo con .htaccess no puedes sacar el id a partir del tag, por eso tienes que programarte una función que realice esta búsqueda en la base de datos.

Otra opción, si no tienes muchos tags, ya que si no es muy engorroso, es meter una línea de .htaccess por cada tag, de manera que asignas a mano un id a cada tag. Algo como:

Código Apache:
Ver original
  1. RewriteEngine On
  2. RewriteRule ^ficha=sevilla-duplex/?$ ficha.php?id=62&tags=sevilla-duplex [QSA]
  3. RewriteRule ^ficha=madrid-mansion/?$ ficha.php?id=42&tags=madrid-mansion [QSA]
  4. RewriteRule ^ficha=mallorca-chalet/?$ ficha.php?id=99&tags=mallorca-chalet [QSA]

Como ves esta última opción es inviable si estás continuamente metiendo y sacando registros de tu base de datos o si tienes muchos registros diferentes...

Un saludo
__________________
www.mundodivx.com || www.mundodivx.org

Pon tu mano en un horno caliente durante un minuto y te parecerá una hora.
Siéntate junto a una chica preciosa durante una hora y te parecerá un minuto.
Eso es la relatividad.
  #8 (permalink)  
Antiguo 19/07/2010, 10:33
 
Fecha de Ingreso: junio-2008
Mensajes: 34
Antigüedad: 16 años, 6 meses
Puntos: 0
Respuesta: .htaccess y variables $1 y $2

ferny, una pregunta.

En el archivo htaccess se puede usar php con mysql?
He intentao utilizarlo abriendo <?php y cerrando ?> y me da fallo. Si no no puedo hacer la consulta que dices.

Gracias por la ayuda
  #9 (permalink)  
Antiguo 19/07/2010, 10:38
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: .htaccess y variables $1 y $2

No. Lo que quiso decir fenry es lo que te mencioné arriba
Cita:
Iniciado por abimaelrc Ver Mensaje
puedes hacer esa lógica en PHP para que verifique lo que haya puesto el usuario.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #10 (permalink)  
Antiguo 19/07/2010, 11:07
Avatar de ferny
Il capo della mafia
 
Fecha de Ingreso: febrero-2002
Ubicación: Al final del cable
Mensajes: 10.080
Antigüedad: 22 años, 10 meses
Puntos: 55
Respuesta: .htaccess y variables $1 y $2

Efectivamente. Tienes que editar el código de tus archivos .php para meter ahí la consulta a la base de datos.
__________________
www.mundodivx.com || www.mundodivx.org

Pon tu mano en un horno caliente durante un minuto y te parecerá una hora.
Siéntate junto a una chica preciosa durante una hora y te parecerá un minuto.
Eso es la relatividad.

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