webForumDet fria alternativet

Sortera nyheter efter kategoriID

PHP

1 svar · 235 visningar · startad av peterpops

Medlem sedan aug. 200135 inlägg
Frågan#1

Hejsan!
Jag är relativt ny på php och har stött på ett litet problem.

Det är så att jag har gjort ett litet nyhetsscript, där jag kan skriva i nyheter. varje nyhet märks med ett kategorinummer, som den då tillhör.

nu är det så att jag har kört fast på själva indexsidan av scriptet.
Jag vill visa, låt oss säga de 30 senaste nyheterna, sorterade efter vilken kategori de tillhör, exempel:

KATEGORI ETT: NYHETER
2003-03-13 - Fåglarna kvittrar
2003-03-11 - Förkylning
2003-02-23 - Snart är våren här

KATEGORI TVÅ: NYA LÄNKAR
2003-03-20 - aftonbladet.se
2003-03-14 - idg.se
2003-02-27 - hotmail.com

ja, ni förstår säkert. Inga konstigheter alls, för den som kan det. ;)

Men du jag som sagt är både nybörjare på både php och mysql så ber jag er om hjälp.

Tabellerna jag lagrar nyehter och kategorier är:

NYHETER
nyhetsID, katID, rubrik, text

KATEGORIER
katID, katnamn

Tack på förhand.

Medlem sedan jan. 2000372 inlägg
#2

Kanske så här?

$sql = "SELECT katID, katnamn FROM KATEGORIER ORDER BY katnamn";
$rs = mysql_query($sql);
while($rows = mysql_fetch_array($rs)) {
  // Skriv ut kategorinamnet:
  echo "<b>" . $rows["katnamn"] . "</b><br>";
  $sql = "SELECT * FROM NYHETER WHERE katID = " . $rows["katID"] . " ORDER BY nyhetsID DESC LIMIT 0, 30";
  $rs2 = mysql_query($sql);
  while($rows2 = mysql_fetch_array($rs2)) {
    // Skriv ut nyhetsrubriken - du kan själv lägga till kod för att länka eller vad du nu vill göra.
    echo $rows2["rubrik"] . "<br>";
    }
  }

Otestat...

254 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)