Generar url amigables desde url dinamicas
Hola que tal amigos del foro.
Hay un tema que he estado estudiando pero la verdad es que la informacion que hay (que es bastante) es muy difusa. Y son las famosas url amigables.
He tratado con un monton de codigo impresionante pero nada sucede, lo que estoy seguro es que en mi instalacion de xampp si esta activo el modulo para la reescritura de url.
Evidentemente la ides seria que no apareciera algo como esto:
https://www.dominio.com/agregar.php?cat=1
Sino algo como:
https://www.dominio.com/agregar-comentario
Espero que me puedan ayudar con el tema.
Saludos y muchas gracias amigos.
Editado
Hay un tema que he estado estudiando pero la verdad es que la informacion que hay (que es bastante) es muy difusa. Y son las famosas url amigables.
He tratado con un monton de codigo impresionante pero nada sucede, lo que estoy seguro es que en mi instalacion de xampp si esta activo el modulo para la reescritura de url.
Evidentemente la ides seria que no apareciera algo como esto:
https://www.dominio.com/agregar.php?cat=1
Sino algo como:
https://www.dominio.com/agregar-comentario
Espero que me puedan ayudar con el tema.
Saludos y muchas gracias amigos.
Editado
0
Puntos
Puntos
2925
Visitas
Visitas
13
Resp
Resp
Por tokens hace 121 meses
Principiante
Respuesta #1
Hola, bueno para eso se usa el .htaccess que es un archivo que debes crear. Ser?a algo as?
Pero eso no es todo, debes cambiar el link que lleva a esa URL, por ejemplo
El archivo .htaccess debe ir en la carperta raiz, no en subcarpetas :P
## Activar mod_rewrite de Apache para la reescritura de las URL Options +FollowSymlinks RewriteEngine On RewriteRule ^agregar/(.+)$ agregar.php?cat=1Y lo guardas como .htaccess
Pero eso no es todo, debes cambiar el link que lleva a esa URL, por ejemplo
<a href="https://www.dominio.com/agregar.php?cat=1"> link </a>Ahora ser?
<a href="agregar/<?php echo $_GET['cat'];?>"> link </a>
El archivo .htaccess debe ir en la carperta raiz, no en subcarpetas :P
Respuesta #2
Hola amigo que ta.
Gracias por darme una mano con el tema este, ya me tiene loco. mira exacatamente mi link de la pagina index a la que toca es el siguiente:
<a href="bloque-uno-detalle.php" class="btn btn-success btn-lg" role="button">Más detalles</a>
(Estoy usando bootstrap)
Entonces el link nuevo como quedaria??
y debo manipular el .htaccess donde dice categoria??
Saludos y muchas gracias
Gracias por darme una mano con el tema este, ya me tiene loco. mira exacatamente mi link de la pagina index a la que toca es el siguiente:
<a href="bloque-uno-detalle.php" class="btn btn-success btn-lg" role="button">Más detalles</a>
(Estoy usando bootstrap)
Entonces el link nuevo como quedaria??
y debo manipular el .htaccess donde dice categoria??
Saludos y muchas gracias
0
Puntos
Puntos
Por tokens hace 120 meses
Principiante
Respuesta #3
Ok bueno el .htaccess sería
http://www.tu-dominio.com/bloque-uno-detalle.php
por
http://www.tu-dominio.com/agregar
Lo de categoría era porque mi ejemplo así pero no va con tu caso. El link debe ser así
Cuéntame cual fue tu resultado!
## Activar mod_rewrite de Apache para la reescritura de las URL Options +FollowSymlinks RewriteEngine On RewriteRule ^agregar bloque-uno-detalle.phpEso debería reemplazar
http://www.tu-dominio.com/bloque-uno-detalle.php
por
http://www.tu-dominio.com/agregar
Lo de categoría era porque mi ejemplo así pero no va con tu caso. El link debe ser así
<a href="agregar">link</a>Y pues sí, me di cuenta que estás usando Bootstrap jaja :P
Cuéntame cual fue tu resultado!
Respuesta #4
Te pasate amigo genial. efectivamente la url se reescribe. Ahora sera cosa de ir pasando palabras claves po la url.
Solo me queda un par de dudas para redondear el asunto. Las enumero para ver si me cuentas tu experiencia con el asunto.
1- por cada enlace que haya en la pagina yo debo crear a mano en el .htaccess esto (Reemplazando por lo que se requiera obviamente)
2- Como lo podria hacer en el caso que en la url se pase un contador (Id), por ejemplo yo tengo otra web en la que tengo un sistema de comentarios y las url son algo asi.
Eso es estimado de todas maneras igual agradesco mucho tu ayuda.
Saludos y gracias.
Solo me queda un par de dudas para redondear el asunto. Las enumero para ver si me cuentas tu experiencia con el asunto.
1- por cada enlace que haya en la pagina yo debo crear a mano en el .htaccess esto (Reemplazando por lo que se requiera obviamente)
RewriteRule ^agregar bloque-uno-detalle.php
2- Como lo podria hacer en el caso que en la url se pase un contador (Id), por ejemplo yo tengo otra web en la que tengo un sistema de comentarios y las url son algo asi.
www.miweb/comentarios-detalles.php?coment=4y el numero cambia depende de que comentario se quiera leer.
Eso es estimado de todas maneras igual agradesco mucho tu ayuda.
Saludos y gracias.
0
Puntos
Puntos
Por tokens hace 120 meses
Principiante
Respuesta #5
Hola tokens, pues de nada :D te respondo tus dudas enumerándolas.
1.- Sí, por cada enlace que tu quieras que se reescriba debes crear otra línea parecida a
2.- En el caso de tener un valor para una variable en la URL, se hace como el primer ejemplo que te mostré. En tu caso sería
Saludos y de nada :P un gusto ayudarte.
1.- Sí, por cada enlace que tu quieras que se reescriba debes crear otra línea parecida a
RewriteRule ^agregar bloque-uno-detalle.php
2.- En el caso de tener un valor para una variable en la URL, se hace como el primer ejemplo que te mostré. En tu caso sería
RewriteRule ^comentarios/(.+)$ comentarios-detalles.php?coment=1El 1 quiere decir cualquier valor que se encuentre en al otro lado de la igualdad (=).
Saludos y de nada :P un gusto ayudarte.
Respuesta #6
Ah y me olvidé. El enlace que lleva a ese comentario sería
<a href="comentarios/<?php echo $idComentario; ?>">ver comentario</a>
Respuesta #7
Muchas gracias estimado por tu ayuda, llevo como 2 meses dando vuelta por muchos foros y nadie me dio una respuesta concreta. Ahora ya está saliendo bien.
Disculpa la patudes si pero tú me contarías que editor de texto usas en tus proyectos web. Te lo pregunto por qué yo uso el ckeditor 4 y siempre me da buenos resultados pero ahora estoy tratando de hacer un blog y por primera vez me veo en la necesidad de poder embeber videos en el post cuando se requiera, pero el editor no da esa opción por defecto sé que hay un plugin de YouTube para el pero no he logrado hacerlo arrancar con ese plugin incluso siguiendo las instrucciones de la documentación oficial no sale.
Saludos amigo.
Muchas gracias estimado por tu ayuda, llevo como 2 meses dando vuelta por muchos foros y nadie me dio una respuesta concreta. Ahora ya está saliendo bien.
Disculpa la patudes si pero tú me contarías que editor de texto usas en tus proyectos web. Te lo pregunto por qué yo uso el ckeditor 4 y siempre me da buenos resultados pero ahora estoy tratando de hacer un blog y por primera vez me veo en la necesidad de poder embeber videos en el post cuando se requiera, pero el editor no da esa opción por defecto sé que hay un plugin de YouTube para el pero no he logrado hacerlo arrancar con ese plugin incluso siguiendo las instrucciones de la documentación oficial no sale.
Saludos amigo.
0
Puntos
Puntos
Por tokens hace 120 meses
Principiante
Respuesta #8
Hola tokens pues yo usaba ckeditor, y me pasó lo mismo que a ti y no lo resolví. Luego me provocó hacer un editor yo mismo, sencillito que coloque letras negras, cursivas.. Dependiendo del caso, usaría de nuevo Ckeditor. Pero sobre el problema que tienes con el plugin de Youtube no se como se soluciona :/
Respuesta #9
Si es la eterna cuestion con ckeditor. bueno vere como diablos puedo resolver esto.
Saludos y Gracias.
Saludos y Gracias.
0
Puntos
Puntos
Por tokens hace 120 meses
Principiante
Respuesta #10
Hola Jose que tal. Estimado mira me ha resultado bastante bien el asunto de la reescritura de las url con la tecnica que me comentaste. Pero la reescritura para url que llevan un id no me resulta.
incluso trato de hacerlo asi.
(Esto en el .htaccess)
incluso trato de hacerlo asi.
(Esto en el .htaccess)
RewriteRule ^comentarios/(.+)$ comentarios-detalles.php?coment=1y en el link pongo esto:
<a href="comentarios/<?php echo $idComentario; ?>">ver comentario</a> dice que hay una variable indefinida creo??. Saludos y gracias
0
Puntos
Puntos
Por tokens hace 120 meses
Principiante
Respuesta #11
Hola tokens, ¿le pusiste valor a la variable $idComentario? Si me permites ver el archivo donde se encuentra el link
<a href="comentarios/<?php echo $idComentario; ?>">ver comentario</a>Para ver si tienes bien la consulta :P
Respuesta #12
Hola Jose que tal estas.
Mira el asunto es que por motivos de fuerza mayor tuve que restaurar el pc a su estado de fabrica asique el archivo donde estaba realizando las pruebas lo perdi inevitablemente.
Me podrias dar un ejemplo de dicho valor.
Te lo agradeceria muchos. saludos.
Mira el asunto es que por motivos de fuerza mayor tuve que restaurar el pc a su estado de fabrica asique el archivo donde estaba realizando las pruebas lo perdi inevitablemente.
Me podrias dar un ejemplo de dicho valor.
Te lo agradeceria muchos. saludos.
0
Puntos
Puntos
Por tokens hace 120 meses
Principiante
Respuesta #13
Hola tokens, me refiero a la consulta que haces para obtener los valores del comentario, post lo que sea, por ejemplo: El autor, el ID en la tabla, el titulo.. Así
La línea
Escribi $idComentario como ejemplo, quizás tú lo tienes como
Saludos :D
<?php require_once("connection/config.php"); $conectar; $baseDeDatos; $query = mysql_query("SELECT * FROM temas ORDER BY prioridad DESC, id DESC") or die ("Hay un problema al momento de seleccionar los elementos de la tabla temas"); while ($articulo = mysql_fetch_array($query)) { ?> <article> <div class="titulo"> <?php echo $articulo["titulo"];?> </div> <br> <div class="contenido"> <?php echo $articulo["contenido"]; ?> </div> <br> Autor <?php echo $articulo["autor"]; ?> <br> <a href='<?php echo $articulo["id"]; ?>'>Ir al articulo</a> </article> <?php ?>
La línea
<a href='<?php echo $articulo["id"]; ?>'>Ir al articulo</a>Dice $articulo["id"]; Eso es a lo que yo me refiero como $idComentario.
Escribi $idComentario como ejemplo, quizás tú lo tienes como
$row_results["id"];Depende de como hayas llamado cada cosa.. No influye el nombre que le coloques a la variable.
Saludos :D