W westman Medlem sedan aug. 2004 249 inlägg Trådstart 18 aug. 2004 17:09 #1 En enkel fråga. Jag har en MySQL databas och skall ur denna hämta ut värden. Dessa värden vill jag sortera i storleksordning. När jag använder "ORDER BY..." så sorteras de ju efter när de skapades. Hur skall jag göra?
E erka Medlem sedan dec. 1999 6 522 inlägg ORDER BY kolumnnamn DESC/ASC (beroende på om du vill ha stigande/fallande)
W westman Medlem sedan aug. 2004 249 inlägg ..Det trodde jag också men det funkar inte. Det verkar som att det är ngt annat fel på koden. Så här ligger det till; jag har gjort ett bokningssystem där jag nu vill lista användarens bokade tider. Och tiderna skall vara sorterade i kronologisk ordning, dvs den bokade tiden som ligger närmast dagens datum skall stå först.
Koden:
<?
function Visa_tider()
{
mysql_connect("******","******","*****");
mysql_select_db ('*****');
$sql = "SELECT * FROM boka WHERE user='".$_SESSION['sess_user']."' ORDER BY day DESC";
$result = mysql_query($sql);
$month2 = array
(1=>"Januari",
2=>"Februari",
3=>"Mars",
4=>"April",
5=>"Maj",
6=>"Juni",
7=>"Juli",
8=>"Augusti",
9=>"September",
10=>"Oktober",
11=>"November",
12=>"December");
echo '<table border="0" cellspacing="1" cellpadding="2">';
echo '<tr bgcolor=#0099FF>';
echo '<td width=55>Dag:</td>';
echo '<td width=90>Datum:</td>';
echo '<td width=90>Tid:</td>';
echo '<td width=90>Rum:</td>';
echo '</tr>';
while ($row = mysql_fetch_array ($result))
{
$unix_time = strtotime($row['year'].'-'.$row['month'].'-'.$row['day']);
$days = array('Söndag', 'Måndag', 'Tisdag', 'Onsdag', 'Torsdag', 'Fredag', 'Lördag');
$day_in_week = $days[date("w", $unix_time)];
?>
<tr bgcolor="#F4F4F4" width=80>
<td width=55>
<? echo "$day_in_week";?>
</td>
<td width=90>
<?=$row["day"]?> <? echo $month2[$row['month']];?>
</td>
<td width=90>
<?=$row["tid"]?>
</td>
<td width=90>
<?=$row["room"]?>
</td>
</tr>
Kanske lite stökig kod så fråga ifall ni undrar över ngt..
Peeer Medlem sedan mars 2002 5 907 inlägg Borde fungera. Vad är det för datatyp på kolumen day?
W westman Medlem sedan aug. 2004 249 inlägg varchar.. kanske det som är kruxet..
Peeer Medlem sedan mars 2002 5 907 inlägg Det är det som är kruxet! Då sorteras ju dina datum som om de vore strängar istället för datum. Byt till datetime om du vill ha en vettig sortering!
W westman Medlem sedan aug. 2004 249 inlägg om jag nu vill sortera efter day i första hand och month i andra. hur göra?
W westman Medlem sedan aug. 2004 249 inlägg jag löste det på egen hand, tack för er hjälp