estoy tratando de armar url amigables de links como estos:
http://localhost/websa100/index.php?...s=seccion&id=1
http://localhost/websa100/index.php?...ubseccion&id=2
http://localhost/websa100/index.php?modules=staff
http://localhost/websa100/index.php?...pcion=ver&id=4
http://localhost/websa100/index.php?...as&verPagina=2
http://localhost/websa100/index.php?...pcion=ver&id=1
http://localhost/websa100/index.php?...os&verPagina=2
bien he armado un funcion php que me permite obtener el titulo y/o nombre de los id de cada link
Código PHP:
y este es mi .htaccesVer original
/** * crea url amigables * * @param string $url */ function amigables($url){ if($modulo!='seccion' && $modulo!='subseccion'){ $amigable=$modulo; } else{ $amigable='/'; } switch ($modulo){ case 'seccion': if($key[1]!='ver') $sql="select nombre from menu where id_menu='".$key[1]."' and visible='1'"; break; case 'subseccion': if($key[1]!='ver') $sql="select titulo from secciones where id_seccion='".$key[1]."' and visible='1'"; break; case 'noticias': if($key[1]!='ver'){ $sql="select titulo from noticias where id_noticia='".$key[1]."'"; } break; case 'articulos': if($key[1]!='ver'){ $sql="select titulo from articulos where id_articulo='".$key[1]."'"; } //echo $sql."<br/>"; break; } //hago la consulta sql if($key[1]!='ver' && $key[0]!='verPagina' && ($modulo!='seccion' && $modulo!='subseccion')){ //echo "entro "; } elseif($key[0]=='verPagina'){ //echo "casi entra "; $amigable.="/pagina/".$key[1]; } else{ //echo "no entro "; } } if($modulo=="cursos" || $modulo=="portfolio"){ if($key[0]=='verPagina'){ $amigable.="/pagina/".$key[1]; } } } if($url!='index.php'){ if($ubicacion[2]=='admin'){ $amigable='/'.$ubicacion[1].'/'.$ubicacion[2].$amigable; } else{ $amigable=$amigable.".html"; } } else{ if($ubicacion[2]=='admin'){ $amigable=$_SERVER['HTTP_HOST'].'/'.$ubicacion[1].'/'.'admin'; } } return $amigable; }
Código HTML:
entonces si yo llamo a la funcion asi:Ver original
<IfModule mod_rewrite.c> Options +FollowSymLinks RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)\.html$ index.php?modules=$1 [NC] RewriteRule ^(.*)/(.*)\.html$ index.php?modules=$1&id=&2 [NC] RewriteRule ^(.*)/(.*)\.html$ index.php?modules=$1&verPagina=&2 [NC] RewriteRule ^(.*)/(.*)/(.*)\.html$ index.php?modules=$1&opcion=&2&id=$3 [NC] </IfModule>
Código html:
Ver original
me crea estos links html
Código HTML:
Ver original
hasta ahí todo bien, salvo que a la única url que entra es a la que se forma con index.php=modules=staff así que mi duda es como se arma el .htacces para que me interprete las restante url amigables que armo?