Avatar billede doncarnage Nybegynder
09. november 2008 - 17:30 Der er 2 kommentarer og
1 løsning

Tæl antal rækker i en tabel (med en andens tabels id)

Jeg ved ikke om titlen er til at forstå, men jeg vil lige prøve at udpensle..

Jeg har 2 tabeller: news & comments.. Når jeg udskriver mine nyheder fra tabellen news vil jeg gerne trække data ud fra comments, som så fortæller hvor mange kommentarer, der er skrevet til hver enkelt nyhed.. Jeg har forsøgt at gøre det på følgende måde, men desværre uden held..

<?
$query = mysql_query("SELECT * FROM news ORDER BY id DESC") or die(mysql_error());
while ($row = mysql_fetch_assoc($query)) {

$count = "SELECT count(*) AS antal FROM comments, news WHERE comments.parent=news.id";
$querycount = mysql_query($count) or die(mysql_error());
$rowcount = mysql_fetch_assoc($querycount);

    echo '<table border=0 width=500><tr><td><font face=Verdana size=4><b>'.$row['title'].'</b></font></td></tr>';
    echo '<tr><td valign=top><font face=Verdana size=1 color=#999999>Oprettet af '.$row['author'].'  - d. '.$row['date'].'</font>';
    echo '</td></tr><tr><td valign=top><font face=Verdana size=1><br>';
    echo nl2br($row['text']);
    echo '</font></td></tr>';
    echo '<tr><td><br><font face=Verdana size=1><br><b><a href="news.display.php?id='.$row['id'].'">Kommentarer('.$rowcount["antal"].')</a></b></font><br><br><hr></td></tr></table>';
}
?>

Det er som i nok kan se variablen $count, der gerne skal udskrive antal kommentarer pr. nyhed.. Jeg har forsøgt mig med comments.parent=news.id, da det er parent i tabellen comments, der holder styr på hvilken nyhed kommentarerne tilhører!

Desværre virker det ikke, da den blot sætter $count variablen til 3 ved alle nyhederne :/

Hvordan får jeg rettet dette?
Avatar billede tjens Nybegynder
09. november 2008 - 17:39 #1
Da SQL på comments kører inden for while loopet, vil jeg tro den kun skal vælge en konkret id sådan her:

$count = "SELECT count(*) AS antal FROM comments WHERE parent=".$row['id'];

og dermed kun få 1 svarrecord.
Avatar billede doncarnage Nybegynder
09. november 2008 - 17:46 #2
Genialt.. Det virker som det skal nu ;)

Tak for den hurtige respons - smid et svar og du skal blive belønnet
Avatar billede tjens Nybegynder
09. november 2008 - 18:01 #3
Selv tak
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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