Foros del Web » Programando para Internet » PHP »

Urls amigables (lígera confusion)

Estas en el tema de Urls amigables (lígera confusion) en el foro de PHP en Foros del Web. que tal amigos buen día he estado intentando poner urls amigables a mi site de modo que se sustituya la url por el titulo de ...
  #1 (permalink)  
Antiguo 26/02/2010, 10:40
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 15 años, 4 meses
Puntos: 641
Urls amigables (lígera confusion)

que tal amigos buen día

he estado intentando poner urls amigables a mi site de modo que se sustituya la url por el titulo de la página de la sigueinte manera (leido de un tuto en google)

el cual es el siguiente por si alguien quiere leerlo

http://www.baluart.net/articulo/urls-amigables-con-php

a ver en esa página te dan unos códigos pero no me sale, me dice error 500 al tratar de adaptarlos a mi web

miren

Código PHP:
Ver original
  1. <?php
  2. function urls_amigables($url) {
  3.  
  4. // Tranformamos todo a minusculas
  5. $urls = strtolower($urls);
  6.  
  7. //Rememplazamos caracteres especiales latinos
  8. $find = array('á', 'é', 'í', 'ó', 'ú', 'ñ');
  9. $repl = array('a', 'e', 'i', 'o', 'u', 'n');
  10. $urls = str_replace ($find, $repl, $urls);
  11.  
  12. // Añaadimos los guiones
  13. $find = array(' ', '&', '\r\n', '\n', '+');
  14. $urls = str_replace ($find, '-', $urls);
  15.  
  16. // Eliminamos y Reemplazamos demás caracteres especiales
  17. $find = array('/[^a-z0-9\-<>]/', '/[\-]+/', '/<[^>]*>/');
  18. $repl = array('', '-', '');
  19. $urls = preg_replace ($find, $repl, $urls);
  20. return $urls;
  21. }
  22. ?>

el archivo php no lo moví bueno si cambie la variable url por urls

Luego el .htaccess

Código PHP:
Ver original
  1. RewriteRule ^anim\.php?url=$1&title=$2
  2. // La variable del título de la noticia
  3. $urls = "Este es un título";
  4.  
  5. // mostramos el titulo editado
  6. //echo urls_amigables($url);
  7.  
  8. // mostramos la url terminada
  9. echo “http://manganimemas.com/”.$id.”/”.urls_amigables($url).”/”;

no sé si este bien por eso pido me digan que puedo estar haciendo y pa donde tirarle. por que no sé mucho de expreiones regulares solo lo básico pa medio entenderles gracias por su ayuda.
  #2 (permalink)  
Antiguo 26/02/2010, 10:50
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 8 meses
Puntos: 77
Respuesta: Urls amigables (lígera confusion)

Err.. si, definitivamente estas confundido..en el .htaccess no va nada de codigo de php, solo las rewrite rules (qe por cierto la tuya esta mal)

Te aconsejo que leas mas sobre url amigables y mod_rewrite, en las FAQs del foro de apache hay buenos ejemplos
  #3 (permalink)  
Antiguo 26/02/2010, 11:14
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 15 años, 4 meses
Puntos: 641
Respuesta: Urls amigables (lígera confusion)

jaja, ok es que soy nuevo en esto. leere un poco más.

solo una cosa

entonces este código

Código PHP:
Ver original
  1. $urls = "Este es un título";
  2. // mostramos el titulo editado
  3. //echo urls_amigables($url);
  4. // mostramos la url terminada
  5. echo "http://manganimemas.com/".$id."/".urls_amigables($url)."/";

va en mi archivo php?

solo sería eso lo demás seguramente lo solucionaré

Olvidalo, ya vi que sí

ahora a ver que onda con mi expresión regular.

Pero me surge una duda esa variable $id ¿de donde salió? si alguien le entiende a esa parte ¿me puede explicar si no es mucha molestia?

Etiquetas: amigables, confusion, url
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 09:30.