Ver Mensaje Individual
  #4 (permalink)  
Antiguo 17/04/2011, 22:04
Avatar de memoadian
memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 15 años, 5 meses
Puntos: 641
Respuesta: url amigables con guion medio

lo que pasa es que no sabes lo que estas haciendo.

esto:

^anuncio/(.+)(.+)/$

quiere decir lo siguiente

^anuncio = empieza con "anuncio"
/ = slash que divide las variables
(.+) = esto captura las variables, nada que ver con que pongas signos de mas o guiones medios.
/$ = esto es que tiene que terminar con slash la url

para que te dé como quieres solo es esto:

^anuncio/(.+)/$

es casi como dijo el compañero solo que en vez de los .* a ti te sirven los .+ no se por que pero a mi tambien me pasa, y lo que quieren decir los .+ entre parentesis es que capturan todo lo que este despues de anuncio/ y antes de /
aqui el problema es que tienes que separar las variables con varios guiones por eso no identifica cada valor pasado por get.

si tú pones esta regla en tu .htaccess

RewriteRule ^anuncio/(.+)/(.+)/$ anuncio.php?ads=$1&id=$2 [L,QSA]

y en tu archivo anuncios.php escribes esto:

Código PHP:
Ver original
  1. echo $_GET['ads'];
  2. echo "<br/>";
  3. echo $_GET['id'];

y en tu url escribes esto:

www.dominio.com/anuncio/balones-verdes/1/

obtendrás esto:

balones-verdes
1

lo que indica que si toma las variables, ponerlo como tu quieres siendo dos variables, no es viable o por lo menos no s me ocurre nada, es mejor separar cada variable con un slash.