Hola a tod@s.
Creo que me estoy volviendo loco. He probado mil cosas, he leído mil manuales y nada, no lo he conseguido.
Para empezar, decir que me gustaría cambiar las url's:
www.dominio.com/articulo.php?id=1
Por:
www.dominio.com/titulo-del-articulo
He leído mil post de este foro pero no he logrado dar con la solución. A ver si contando mi caso más detalladamente alguien consigue ayudarme.
Seguramente ahora alguien me dirá "
añade estas líneas en tu .htaccess y..." pero nada, eso ya lo he probado de mil maneras, lo más que he conseguido es, con este código:
Cita: Options +FollowSymLinks
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteEngine on
RewriteRule ^(.+)$ articulo.php?id=$1
Que url del tipo:
www.dominio.com/articulo.php?id=1
Se vea así (y funcione):
www.dominio.com/1
Pero claro... eso no es lo que quiero. Por si sirve, diré que tengo una tabla en mi base de datos llamada
articulos y dentro de ésta varios campos, como
id,
titulo,
url , entre otros.
De tal modo que si añadiera un artículo llamado "Tengo hambre" estos serían los registros en la base de datos:
articulos
----------
id | titulo | url
---------------------------
1 | Tengo hambre | tengo-hambre
Este es el código (después de quitar la morralla para que se vea más claro) que tengo en mi
articulo.php Código PHP:
<?php
include('config.php');
if(isset($_GET['id'])){
$id = $_GET['id'];
database_connect();
$query = "SELECT * from articulos where id = $id";
$echo = mysql_error();
$result = mysql_query($query);
$num_rows = mysql_num_rows($result);
if ($num_rows == 0) {
include "404.php";;
exit;
}
while ($row = mysql_fetch_assoc($result)) {
$titulo = $row['titulo'];
$contenido = $row['contenido'];
$url = $row['url'];
}
}
echo $titulo;
echo $contenido;
?>
Supongo que si en lugar de la ID (articulo.php?id=1) pudiera mostrar el registro que tengo en url (articulo.php?id=tengo-hambre) podría hacerlo funcionar. Pero claro, he ahí la cuestión, cómo hacerlo y sobre todo que funcione jeje...
Agradecería cualquier ayuda.
PD: no sabía si publicarlo en el foro de PHP o en el de Apache, pero como lo que necesito (creo) es cambiar o meter algo en el código php... por eso lo hice aquí.
Un saludo!