Avatar billede moreless Nybegynder
24. april 2003 - 21:02 Der er 3 kommentarer og
2 løsninger

relateret nyheder med php

Hej

Jeg har et nyhedsarkiv hvor jeg i databasen har et felt med keywords hvor jeg så gerne vil have lavet en "relateret nyheder" funktion.

Et eksempel kan ses på www.computerworld.dk, hvor de kalder det for "Tidligere artikler".

I mit "keywords" felt deler jeg keywords med adskillelse med komma, hvor jeg så blot bruger php funktionen "exlode" til at få dem ud i stykker.

Mit problem er at lave en sql sætning til det som funker, jeg kan lave en sql sætning, men der kommer flere identiske nyheder ud af den.

Min sql ser foreløbig ud ala.

SELECT title, keyword
FROM news
WHERE keyword LIKE '%$keyword1%'
OR keyword LIKE '%$keyword2%'
OR keyword LIKE '%$keyword3%'

problemmet er så at der kan være fra 1 - 10 keywords, jeg kan så bruge en count() til at tælle hvor mange keywords der er og lave en while ud af det - men så kan det ikke ske i en og samme sql sætning - hvor jeg så får problemmet - flere identiske nyheder.
Avatar billede tefcke Nybegynder
25. april 2003 - 00:11 #1
kan du ikke selecte dem distinct?

SELECT DISTINCT title, keyword
FROM news
WHERE keyword LIKE '%$keyword1%'
OR keyword LIKE '%$keyword2%'
OR keyword LIKE '%$keyword3%'
Avatar billede moreless Nybegynder
25. april 2003 - 00:19 #2
det ved jeg ikke kan man? ;-)
Avatar billede moreless Nybegynder
25. april 2003 - 12:33 #3
det kunne man
Avatar billede moreless Nybegynder
25. april 2003 - 12:33 #4
læg et svar hvis vi skal dele points
Avatar billede tefcke Nybegynder
25. april 2003 - 23:34 #5
oki doki!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester