Avatar billede klamse Nybegynder
30. juni 2004 - 15:50 Der er 8 kommentarer og
1 løsning

5 nyeste kommentarer i forum

Ja, er ikke den vilde til php. Men med lidt hjælp er jeg dog kommet frem til det her:

<?
echo "5 nyeste indlæg:";
$query = mysql_query("SELECT id,header,parent,DATE_FORMAT(date,'%e/%c-%y %T') AS date FROM forum WHERE kategori=0 ORDER BY date DESC LIMIT 5") or die(mysql_error());
while($row = mysql_fetch_assoc($query)) {

echo '<tr><td onmouseover="tablebg(this)" onmouseout="normalbg(this)">';
echo '<img src="GFX/prik.gif" alt="Prik" border="0"><a href="laes.php?id='.$row['id'].'">'.$row['header'].'</a><br \>';
echo '</td></tr>';
}
?>

Den trækker de 5 nyeste kommentarer ud fra min mysql database, ligesom her på eksperten :). Problemet at hvis flere kommentere den samme tråd lige efter hinanden kommer der til at stå det samme flere gange. Så kan man ikke gøre sådan at den max viser kommentarer fra den samme tråd 1 gang...? hehe hvis i forstår mig...
Avatar billede jaw Nybegynder
30. juni 2004 - 15:53 #1
prøv GROUP BY id måske

$query = mysql_query("SELECT id,header,parent,DATE_FORMAT(date,'%e/%c-%y %T') AS date FROM forum WHERE kategori=0 ORDER BY date DESC GROUP BY header LIMIT 5") or die(mysql_error());

Så burde der ikke komme mere end 1 hvor header har samme værdi... (Hvis det altså er header hvor du definerer hvor kommentaren hører til)

Forståeligt? :)
Avatar billede klamse Nybegynder
30. juni 2004 - 15:55 #2
hmm lidt :)
prøber det lige
Avatar billede klamse Nybegynder
30. juni 2004 - 15:59 #3
hmm får følgende fejl:
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'GROUP BY header LIMIT 5' at line 1
Avatar billede jaw Nybegynder
30. juni 2004 - 16:04 #4
Jeg kan ALDRIG huske hvordan det er den skal stå :)

Prøv:

$query = mysql_query("SELECT id,header,parent,DATE_FORMAT(date,'%e/%c-%y %T') AS date FROM forum WHERE kategori=0 GROUP BY header ORDER BY date DESC LIMIT 5") or die(mysql_error());

...i stedet for...
Avatar billede klamse Nybegynder
30. juni 2004 - 16:13 #5
der var den :)
Skulle bare skrive GROUP by parent :)
Det kunne du selvfølgelig ikke vide hehe!
Tak skal du ha, smider du et svar?
Avatar billede jaw Nybegynder
30. juni 2004 - 16:16 #6
Citat: "(Hvis det altså er header hvor du definerer hvor kommentaren hører til)"

Jeg gættede udfra mine bedste evner :) - Der så åbenbart ikke var så sindsygt gode :)
Avatar billede solja Nybegynder
30. juni 2004 - 16:20 #7
Du kan også prøve det her:

$query = mysql_query("SELECT id,header,parent,DATE_FORMAT(date,'%e/%c-%y %T') AS date FROM forum WHERE kategori=0 ORDER BY date DESC") or die(mysql_error());

$i = 1;
$gammelt="";

while($row = mysql_fetch_assoc($query) and $i<=6){
if $row['header'] != $gammelt{
echo '<tr><td onmouseover="tablebg(this)" onmouseout="normalbg(this)">';
echo '<img src="GFX/prik.gif" alt="Prik" border="0"><a href="laes.php?id='.$row['id'].'">'.$row['header'].'</a><br \>';
echo '</td></tr>';
$i=$i+1;
}
$gammelt=$row['header'];
}

//solja
Avatar billede klamse Nybegynder
30. juni 2004 - 17:57 #8
Nu har jeg lige fået det andet til at virke :) Så kaster mig ikke ud i mere ligenu :)
Avatar billede jaw Nybegynder
30. juni 2004 - 17:59 #9
Tak, tak...

Og Solja's vil også virke, men det vil være en mere tosset måde. På min måde, begrænser du både mængden du udtager og behandlingen af det :)
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