Foros del Web » Programando para Internet » PHP »

Cambiar mostrar.php?id=1 por / / /

Estas en el tema de Cambiar mostrar.php?id=1 por / / / en el foro de PHP en Foros del Web. Hola, como puedo cambiar la direccion, por ej: mostrar.php?id=1 por barras, es decir, ademas de ? y = aparezcan / Gracias...
  #1 (permalink)  
Antiguo 17/02/2008, 20:10
 
Fecha de Ingreso: diciembre-2006
Mensajes: 294
Antigüedad: 17 años, 4 meses
Puntos: 2
Cambiar mostrar.php?id=1 por / / /

Hola, como puedo cambiar la direccion, por ej: mostrar.php?id=1 por barras, es decir, ademas de ? y = aparezcan /

Gracias
  #2 (permalink)  
Antiguo 17/02/2008, 20:22
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: Cambiar mostrar.php?id=1 por / / /

Busca información en , que hay varios tutoriales al respecto:

urls amigables

O busca en el foro usando los mismos términos. El tema se ha tratado muchas veces

Un saludo,
  #3 (permalink)  
Antiguo 17/02/2008, 21:30
 
Fecha de Ingreso: febrero-2008
Mensajes: 43
Antigüedad: 16 años, 2 meses
Puntos: 1
Re: Cambiar mostrar.php?id=1 por / / /

Por acá hay otro articulo bueno

http://www.desarrolloweb.com/articulos/2066.php
  #4 (permalink)  
Antiguo 17/02/2008, 21:37
Avatar de Bellenger  
Fecha de Ingreso: noviembre-2004
Ubicación: En un lugar del Mundo...
Mensajes: 599
Antigüedad: 19 años, 5 meses
Puntos: 4
Re: Cambiar mostrar.php?id=1 por / / /

Cheka este link...
http://www.baluart.net/articulo/403/...es-con-php.php
Espero te sirva...
__________________
Un Caballero Jura Lealtad. Usa su espada para suprimir la Injusticia No Conoce el Odio y Tampoco el AMOR...
  #5 (permalink)  
Antiguo 18/02/2008, 07:09
 
Fecha de Ingreso: diciembre-2006
Mensajes: 294
Antigüedad: 17 años, 4 meses
Puntos: 2
Re: Cambiar mostrar.php?id=1 por / / /

Hola, gracias por la info. No sabia como llamar a estos y no encontré nada interesante en google. Ahora mismo me estoy fijando en lo que me mandaron. Además, no se donde está el buscador en este foro
  #6 (permalink)  
Antiguo 18/02/2008, 08:12
 
Fecha de Ingreso: diciembre-2006
Mensajes: 294
Antigüedad: 17 años, 4 meses
Puntos: 2
Re: Cambiar mostrar.php?id=1 por / / /

Les agradezco, pero no me sirve google. No hay un script como la gente.... El tema es que por ejemplo, tengo el album donde muestran las fotos... para entrar es así:

album.php?usuario=<? echo $sesion; ?>

$sesion es el nombre de a sesion. El nombre de esta es el nombre del usuario.... que podria quedar asi:

album.php?usuario=gesking

El tema es que quiero es transformarlo a www.dominio.com/album/gesking.html

Pero también tengo otros archivos que obtienen ID...

mostrar.php?id=406

Y me gustaría que se transforme en www.dominio.com/mostrar/406.html

Los script que encuentro a traves de google no explican nada... y ademas son para 1 solo archivo, ponen a index.php, pero en este caso tengo album.php, mostrar.php y ver_usuarios.php

En el caso de "ver_usuarios.php"

ver_usuarios.php?usuario=gesking

Que es igual al album....
  #7 (permalink)  
Antiguo 18/02/2008, 14:31
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: Cambiar mostrar.php?id=1 por / / /

Ok, intentemos algo nuevo

http://www.peoplecnc.com/mod_rewrite_basico.html

Y recuerda... puedes aplicar tantas rewriterules (sentencias de reescritura) como desees, por lo tanto, esto no se restringe a una sola página como mencionas

Código:
Options +FollowSymLinks
RewriteEngine on
Rewriterule ^album/(.*)\.html$ album.php?usuario=$1
Rewriterule ^mostrar/(.*)\.html$ mostrar.php?id=$1
Un saludo,
  #8 (permalink)  
Antiguo 18/02/2008, 16:03
 
Fecha de Ingreso: diciembre-2006
Mensajes: 294
Antigüedad: 17 años, 4 meses
Puntos: 2
Re: Cambiar mostrar.php?id=1 por / / /

Hola okram. Desde ya te agradezco por ayudarme, pero tengo el problema de que no se ven las imagenes...

Hice lo que me pusiste pero no sale....

Me gustaria que te fijes:
http://www.host-image.com.ar/album/gesking.html

Gracias

No sabia lo de privado.
  #9 (permalink)  
Antiguo 18/02/2008, 16:16
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: Cambiar mostrar.php?id=1 por / / /

Eso se debe a que usas rutas relativas en tu código para mostrar las imágenes:

Código HTML:
<img src="imagenes/sombra_esq2.jpg" width="50" height="50" /> 
y al hacer la reescritura que estás haciendo pues es como que ya estás en otra carpeta, en este caso album/, por lo que las imagenes se toman en base a esa carpeta, osea es como que estuvieras llamando a http://www.host-image.com.ar/album/i...ombra_esq1.jpg cuando la ruta verdadera es http://www.host-image.com.ar/imagenes/sombra_esq1.jpg.

Esto tiene varias soluciones:

PRIMERA:
Usa rutas absolutas:
Código HTML:
<img src="http://www.host-image.com.ar/imagenes/sombra_esq2.jpg" width="50" height="50" /> 
SEGUNDA:
Usa otro tipo de rutas absolutas (Un punto delante de la ruta indicará que se toma como base el directorio raíz):
Código HTML:
<img src="./imagenes/sombra_esq2.jpg" width="50" height="50" /> 
TERCERA:
La más sencilla, agrega este meta a tu <head>
Código HTML:
<head>
 
<base href="http://www.host-image.com.ar/" />
 
</head> 
Si revisas el código fuente del foro, verás que es el tercer método el que usa

Un saludo,
  #10 (permalink)  
Antiguo 18/02/2008, 17:41
 
Fecha de Ingreso: diciembre-2006
Mensajes: 294
Antigüedad: 17 años, 4 meses
Puntos: 2
Re: Cambiar mostrar.php?id=1 por / / /

Ahhh jejeje no sabia eso, desde ya muchas gracias, anda de 10!

Una cosita que quedó.... El tema es que tengo en la pagina una paginacion de resultados... El tema es que es así:

album.php?pagina=2&usuario=gesking

pensé... hago así...

album/2/gesking.html

El tema es que al archivo .htaccess lo dejo así:

Options +FollowSymLinks
RewriteEngine on
Rewriterule ^album/(.*)\.html$ album.php?usuario=$1
Rewriterule ^album/(.*)/(.*)\.html$ album.php?pagina=$1&usuario=$2
Rewriterule ^mostrar/(.*)\.html$ mostrar.php?id=$1

Pero no me funciona, que puedo hacer??? gracias
  #11 (permalink)  
Antiguo 18/02/2008, 19:22
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: Cambiar mostrar.php?id=1 por / / /

Es que no se trata sólo de pasarle todo lo que venga.

El punto [.] representa cualquier caracter, por lo que al ingresar esta url: album/2/gesking.html, se va a ejecutar la primera sentencia, y la página que vas a llamar va a ser album.php?usuario=2/gesking

En el .htaccess puedes hacer también una pequeña validación de los datos, algo así:

Código:
Options +FollowSymLinks
RewriteEngine on
Rewriterule ^album/([^/]+)\.html$ album.php?usuario=$1
Rewriterule ^album/([0-9]+)/([^/]+)\.html$ album.php?pagina=$1&usuario=$2
Rewriterule ^mostrar/([0-9]+)\.html$ mostrar.php?id=$1
Busca y lee algo sobre expresiones regulares

Un saludo,
  #12 (permalink)  
Antiguo 18/02/2008, 20:51
 
Fecha de Ingreso: diciembre-2006
Mensajes: 294
Antigüedad: 17 años, 4 meses
Puntos: 2
Re: Cambiar mostrar.php?id=1 por / / /

Gracias che, funciona de 10!!!!!!!!!!!
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 00:06.