Avatar billede pemo123456 Novice
21. maj 2011 - 12:32 Der er 5 kommentarer og
1 løsning

ORDER BY prop_price_sort DESC => sortere ikke - hvorfor?

Hej

Jeg har forsøgt mig med nedenstående script, hvor jeg trækker data ud fra en MySQL tabel, hvorefter de skal vises på en side sorteret efter column prop_price_sort. Dataene bliver trukket fint ud, men der sker desværre ingen sortering. Hvad gør jeg forkert?

For god ordens skyld skal jeg oplyse, at min column prop_price_sort har talværdi i hvert felt - ingen tomme, og indeholder kun tal - ingen andre tegn.


<?php

$sqlCommand = "SELECT * FROM propertyinfo ORDER BY prop_price_sort DESC";
$query = mysqli_query($myConnection, $sqlCommand) or die (mysqli_error());

while ($row = mysqli_fetch_array($query)) {
    $list .= '<span class="propertylist_subheadline"><a href="viewdetails.php?pid='.$row["property_id"].'">'.$row["property_name"].'</a></span><br /><span class="property_list1">Price: USD '.$row["property_price"].'  * * *  '.$row["property_type"].'</span><br /><span class="property_list2">Bedrooms: '.$row["bedrooms"].'  * * *  Bathrooms: '.$row["bathrooms"].'  * * * SQM: '.$row["property_sqm"].'  * * *  SQF: '.$row["property_sqf"].'</span><br /><span class="property_list1">'.$row["short_description"].'</span><hr />';
}

mysqli_free_result($query);
   
?>
Avatar billede keysersoze Ekspert
21. maj 2011 - 13:09 #1
som udgangspunkt er der ikke noget i vejen med din SQL - så et gæt kunne være at din kolonne er et tekst- og ikke tal-felt?
Avatar billede pemo123456 Novice
21. maj 2011 - 13:12 #2
tak for svar indtil videre.

min kolonne er varchar, som jeg så næsten allerede nu kan regne ud, er forkert. Hvad er den korrekte? INT eller ...?
Avatar billede keysersoze Ekspert
21. maj 2011 - 13:37 #3
skal du gemme tal skal du bruge tal-felter ja - tekst og tal sorteres forskelligt. Hvilken kolonnetype du skal benytte afhænger af hvilke tal du skal gemme deri; http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html
Avatar billede pemo123456 Novice
21. maj 2011 - 13:50 #4
Nu har jeg så ændret til int(11), men det gør desværre ingen forskel.

Det jeg gemmer, er simple tal som eksempelvis:

168000
343200
97000
115000
Avatar billede keysersoze Ekspert
21. maj 2011 - 14:11 #5
Hvad sorteres de så efter? Gør det fx nogen forskel og du benytter ASC i stedet for DESC?
Avatar billede pemo123456 Novice
21. maj 2011 - 14:35 #6
Det gjorde en forskel - Måske jeg har læst gamle filer ind. Synes nu ellers jeg har slettet min cache flittig - ellers kan jeg ikke lige forstå, hvorfor det ikke fungerede tidligere.

Tak for hjælp - pointene er på vej. :-)
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