elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  Problema con url amigables
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema con url amigables  (Leído 2,334 veces)
carwar

Desconectado Desconectado

Mensajes: 41


Ver Perfil
Problema con url amigables
« en: 15 Septiembre 2017, 20:51 pm »

Hola que tal todos tengo un problema con las url amigables de mi sitio quiero cambiar esto:

equipo.php?recordId=1

por

/serie/modelo/nombre

es mis href uso este codigo
Código:
"equipo.php?recordId=<?php echo $row_Equipos['id']; ?>"

luego en equipo.php obtengo la variable mediante un get y cargo la base de datos.

en el htacces entre y coloco esto

Código:
Options +FollowSymLinks
RewriteEngine on
#RewriteRule ^(.*)$ equipo.php?recordId=$1

estoy tratando de probar si funciona pero a pesar de poner el nombre de la web/1 por ejemplo no me cargan los datos del equipo. Siu me pueden guiar muy agradecido no tengo mucha idea de como hacer esto.



En línea

AlbertoBSD
Programador y
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.705


🏴 Libertad!!!!!


Ver Perfil WWW
Re: Problema con url amigables
« Respuesta #1 en: 15 Septiembre 2017, 20:59 pm »

Hola, pues lo que necesitas es que un archivo te controle todo lo que recibes por la URL.

Yo en mi archivo HTACCESS tengo:

Código:
RewriteRule ^.*$ ./index.php

Con lo cual todo lo procesa el index.php.

El cual tiene algo similar a:

Código
  1. $params = explode("/",$_SERVER['REQUEST_URI']);
  2. switch($params[1]) {
  3. case "serie":
  4. $modelo= $params[2];
  5. $nombre= $params[3];
  6. break;
  7. ....
  8.  

Posteriormente cargo los datos relacionados que me estan solicitando en el URL

Obviamente tiene que validar que los parámetros existan y sean validos, ademas si los vas a usar para realizar consultas SQL, hay que sanizitarlos para evitar que te inyecten consultas


« Última modificación: 15 Septiembre 2017, 21:04 pm por AlbertoBSD » En línea

carwar

Desconectado Desconectado

Mensajes: 41


Ver Perfil
Re: Problema con url amigables
« Respuesta #2 en: 16 Septiembre 2017, 02:19 am »

gracias bro por tu respuesta. ya he logrado cambiar los links ahora me quedan asi

serie/serie-producto/modelo/6

quisiera que no apareciera el id despues del / osea quitar el 6 alguna idea?

este es mi href

Código:
<a href="serie/<?php echo amigables($row_Modelos['nombre']);?>/<?php echo amigables($row_Equipos['modelo']);?>/<?php echo $row_Equipos['id']; ?>"><img src="images/equipos/<?php echo $row_Equipos['img']; ?>" alt=""></a>

y aqui el codigo del htacces

Código:
RewriteEngine on
RewriteRule ^serie/(.*)/(.*)/(\w+)/?$ equipo.php?nmodelo=$1&modelo=$2&recordId=$3

y aqui les dejo la funcion que uso
Código:
function amigables($url) {

// Tranformamos todo a minusculas

$url = strtolower($url);

//Rememplazamos caracteres especiales latinos

$find = array('á', 'é', 'í', 'ó', 'ú', 'ñ');

$repl = array('a', 'e', 'i', 'o', 'u', 'n');

$url = str_replace ($find, $repl, $url);

// Añaadimos los guiones

$find = array(' ', '&', '\r\n', '\n', '+');
$url = str_replace ($find, '-', $url);

// Eliminamos y Reemplazamos demás caracteres especiales

$find = array('/[^a-z0-9\-<>]/', '/[\-]+/', '/<[^>]*>/');

$repl = array('', '-', '');

$url = preg_replace ($find, $repl, $url);

return $url;


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[mod_rewrite] URLs amigables, problema para que el sitio se vea bien ! « 1 2 »
PHP
Diabliyo 14 12,970 Último mensaje 7 Mayo 2012, 02:22 am
por luis108
[API Facebook + Url Amigables] Problema para implementacion !
PHP
Diabliyo 0 3,254 Último mensaje 25 Agosto 2011, 23:45 pm
por Diabliyo
problema urls amigables...
PHP
Rk_PetIT 0 1,575 Último mensaje 2 Agosto 2013, 00:35 am
por Rk_PetIT
Problema con URL amigables en .htaccess
Desarrollo Web
srlemuuur 1 2,101 Último mensaje 9 Enero 2014, 03:29 am
por engel lex
Url amigables
Desarrollo Web
idenergia 4 2,392 Último mensaje 15 Agosto 2016, 20:55 pm
por zonahurbana
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines