Hola, espero que alguien me pueda echar una mano al problemilla que tengo, estoy creando un sistema web conformado de noticias y categorias (php/mysql), lo que quiero es: al abrir una noticia x (noticia.php?id=5) en la misma pagina se muestren las noticias que hay dentro de esa categoria, me explico mejor con un ejemplo en vivo: http://www.chateagratis.net/chat/76/sala/Latinoamerica.php fijense que la categoria es latinoamerica y debajo estan las noticias dentro de la categoria o subsalas de esa categoria. Porfa ayudenme en esto que es imperativo ya que solo de esto depende que termine el sistema web. Gracias.
¿Cómo está conformada la tabla? Sería simple si pudieras hacer una consulta como SELECT * FROM noticias WHERE categoria = 'Desarrollo Web'. Si lo que no sabes es cómo pasar más parámetros, entonces lo harías así: noticia.php?id=5&categoria=Desarrollo+Web. Luego, en el script PHP escribes:
SELECT * FROM tabla WHERE id = $_GET['id'] OR categoria = '$_GET['categoria']
Eso seleccionará la noticia con ID 5 o las noticias cuya categoría sea 'Desarrollo Web'.
a ver las tablas que quiero unir son: noticias y categorias. noticias esta conformado de: id_noticia(int),id_categoria(int),titulo(varchar),contenido(txt). y la tabla categorias: id_categoria(int), categoria(varchar), parent_id(int). como lo mencionaba quiero mostrar las noticias que hay dentro de esa categoria. Ahora voy a probar el codigo que me diste, espero me vaya bien y mas tarde te aviso, gracias.
La consulta no es la correcta. Lo que tienes que hacer es utilizar la consulta JOIN. Creo que lo siguiente debería funcionar:
SELECT `titulo`, `contenido` FROM noticias
LEFT JOIN categorias ON categorias.categoria = $_GET['categoria']
WHERE noticias.id_categoria = categorias.id_categoria
Ojalá funcione :P. No soy muy bueno con las consultas JOIN.
En ese caso sería mejor utilizar INNER para hacer algo similar a wordpress: si no encuentra nada en la categoría te da la opción de buscar otra cosa y/o mostrar un mensaje "404: no encontrado".
A ver, a ver... WP usa urls del tipo /esta-es-una-entrada en vez de ?p=1393 y similares. Simula tener archivos de cada entrada y, en este caso, es posible aceptarlo, aunque no es correcto.
El error indica que no existe el archivo que se ha pedido.
hola, gracias por los comentarios el script no lo pruebo aun pero ya mero, se un poco de los INNER ya que ahora trabajo solo con el INNER JOIN y se que une las tablas y asi puedo mostrar el contenido tanto de la tabla A y la tabla B, pero creo que la explicacion se ha salido un poco del contexto ( yo espero que no) como decia quiero mostrar todas las noticias que estan en una determinada categoria en una pagina "noticias.php?id=5", si estoy errando pido mil disculpas ya que el codigo aun no lo pruebo.
hola, ya probe el codigo y nada parece que es un poco complicado de lo que parece, a lo mucho he logrado mostrar todas las noticias sin respetar de que categoria fueran eso con inner join, y haciendo una doble consulta me sale la categoria y los canales dentro de la misma pero el problema es que me salen todas juntas en una misma hoja y lo que uquiero es que me salga solo los canales que estan dentro de una categoria
hola, al fin pude resolver el problema y habia sido mas simple de lo que parecia, ya entiendo de cuanto sirve el sentido comun xD Lo que hize es guardar en una variable el id de la categoria, como ya antes habia hecho la consulta del contenido de la tabla noticias y categorias con inner join solo me basto poner $categoria (34) para mostrar todas las noticias que estaban relacionadas con la categoria(34)