Avatar billede pennypacker Nybegynder
08. marts 2006 - 23:37 Der er 20 kommentarer og
1 løsning

Mysql order by problem. Skal vise nye post øverst i forum

Hej jeg har et problem som jeg simpelhen ikke kan løse, jeg vil have de at når nogen skriver i en tråd i mit forum at så tråden bliver lagt øverst.

Jeg lægger lige koden her så kan i måske hjælpe lidt.

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

parent er hvor mange indlæg der er lavet i i tråden
id er jo bare den ældste er 0,1,2,3 osv..

Håber i kan hjælpe, tak på forhånd
Avatar billede webstuff Nybegynder
09. marts 2006 - 00:01 #1
Er id=auto_increment&primary-key ??
Avatar billede jarret Nybegynder
09. marts 2006 - 00:05 #2
måske misforstår jeg men kan du ikke bare skifte DESC med ASC
Avatar billede pennypacker Nybegynder
09. marts 2006 - 00:08 #3
ja id er..
Avatar billede jarret Nybegynder
09. marts 2006 - 00:08 #4
ja det gjorde jeg vist (o:
Avatar billede webstuff Nybegynder
09. marts 2006 - 00:13 #5
Skulle dette på mærkværdig vis ændre noget ? ;o)

$query = mysql_query("SELECT id,header,name,DATE_FORMAT(date,'%e/%c-%y %T') AS date FROM forum WHERE parent='0' ORDER BY id DESC LIMIT $offset,$range") or die(mysql_error());
Avatar billede pennypacker Nybegynder
09. marts 2006 - 00:16 #6
nej ændre ikke noget :)
Avatar billede webstuff Nybegynder
09. marts 2006 - 00:17 #7
Regnede jeg heller ikke med ;o)
Men prøv at fjern din LIMIT og se om det så virker?
Avatar billede pennypacker Nybegynder
09. marts 2006 - 00:19 #8
har prøvet det er nødvendigt for så der kun vises f.eks. 10 tråde pr. side
Avatar billede webstuff Nybegynder
09. marts 2006 - 00:37 #9
Ja men virker det hvis du fjerner din LIMIT?
Avatar billede pennypacker Nybegynder
09. marts 2006 - 00:57 #10
nej så virker det slet ikke
Avatar billede coderdk Praktikant
09. marts 2006 - 03:26 #11
Kan du ikke bare order by date?
Avatar billede coderdk Praktikant
09. marts 2006 - 03:27 #12
order by date desc, id desc

evt
Avatar billede coderdk Praktikant
09. marts 2006 - 03:27 #13
Ja, du har jo lavet et alias oven i date så måske:

order by forum.date desc, id desc
Avatar billede pennypacker Nybegynder
09. marts 2006 - 04:24 #14
ingen af delene virkede :(
Avatar billede wetdog Nybegynder
09. marts 2006 - 12:35 #15
Hej

hvis 'parent' er hvor mange indlæg der er lavet i tråden, så forstår jeg ikke helt din sql (FROM forum WHERE parent=0). Vil du her ikke hente alle tråde med 0 indlæg, eller har jeg helt misforstået?

ellers kunne du prøve:

$qry = "SELECT id,header,name,DATE_FORMAT(date,'%e/%c-%y %T') AS date ";
$qry+= "FROM forum WHERE parent=0 ORDER BY id DESC LIMIT ".$offset.",".$range;

$query = mysql_query($qry);
Avatar billede wetdog Nybegynder
09. marts 2006 - 12:36 #16
sorry - denne:
$qry+= "FROM forum WHERE parent=0 ORDER BY id DESC LIMIT ".$offset.",".$range;

skal rettes til:
$qry.= "FROM forum WHERE parent=0 ORDER BY id DESC LIMIT ".$offset.",".$range;
Avatar billede pennypacker Nybegynder
09. marts 2006 - 13:16 #17
parent er nød til at blive vist med 0 da alle tråde er 0 og f.eks. det første indlæg i den første tråd er 1 og et andet indlæg i nr 2 tråd er 2

desvære det virkede heller ikke, den sagde bare: Parse error: parse error, unexpected T_STRING in
Avatar billede fixxxer Nybegynder
09. marts 2006 - 17:50 #18
Hvad sker der hvis du minimere dit udtræk til følgende:

$query = mysql_query("SELECT id FROM forum WHERE parent=0 ORDER BY id DESC") or die(mysql_error());

while ($fetch = mysql_fetch_assoc($query)) {
    echo $fetch['id'].'<br>';
}

Så skulle det jo gerne resultere i en liste ala:

5
4
3
2
1
Avatar billede pennypacker Nybegynder
09. marts 2006 - 23:32 #19
ja så laver den bare en lang list med de indlæg som passer i de forskellige tråde. altså tal
Avatar billede pennypacker Nybegynder
12. marts 2006 - 23:26 #20
lukker bare
Avatar billede fixxxer Nybegynder
13. marts 2006 - 09:26 #21
Fik du løst problemet?
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