mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 25.04.2024 14:30 Benutzername: Passwort: Auto-Login

Thema: [mysql/php - GELÖST] ORDER BY - sortiert nicht richtig vom 31.08.2009


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> [mysql/php - GELÖST] ORDER BY - sortiert nicht richtig
Autor Nachricht
emorikaner
Threadersteller

Dabei seit: 23.06.2009
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Mo 31.08.2009 09:37
Titel

[mysql/php - GELÖST] ORDER BY - sortiert nicht richtig

Antworten mit Zitat Zum Seitenanfang

morgen zusammen!

gleich zum Problem^^
hab folgende Abfrage:
Code:
$sql = "SELECT * FROM PROSPEKTE WHERE PRO_WA_ID = '".$WA_ID."' ORDER BY ABLAUFDATUM DESC";


Ausgabe funktioniert, die Daten werden alle ausgelesen. Allerdings werden die Datensätze wie folgt sortiert:

Datensatz 1 - Ablauf: 28.09.09
Datensatz 2 - Ablauf: 29.09.09
Datensatz 3 - Ablauf: 30.09.09
Datensatz 4 - Ablauf: 29.08.09
Datensatz 5 - Ablauf: 30.08.09
Datensatz 6 - Ablauf: 31.08.09

wobei es ja eig so sein sollte:

Datensatz 1 - Ablauf: 30.09.09
Datensatz 2 - Ablauf: 29.09.09
Datensatz 3 - Ablauf: 28.09.09
Datensatz 4 - Ablauf: 31.08.09
Datensatz 5 - Ablauf: 30.08.09
Datensatz 6 - Ablauf: 29.08.09

verstehe jetzt halt nicht, wieso er nur nach dem Monat abwärts sortiert, oder ist mein Abfrage falsch? (warscheinlich Lächel )
Ziel ist, dass er sowohl nach Datum als auch nach Monat abwärts sortiert.

Achja, die Spalte 'ABLAUFDATUM' ist ein Datumsfeld, nur so nebenbei^^

Thx im Vorraus für Hilfe^^


Zuletzt bearbeitet von emorikaner am Mi 02.09.2009 09:04, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
pixelpapst303

Dabei seit: 06.07.2006
Ort: hamburg
Alter: 50
Geschlecht: Männlich
Verfasst Di 01.09.2009 16:28
Titel

Antworten mit Zitat Zum Seitenanfang

wie schreibst du das datum in die tabelle, und wie holst du es da genau wieder raus? (inkl. sämtlicher formatierung bspw. php etc?)
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
emorikaner
Threadersteller

Dabei seit: 23.06.2009
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Mi 02.09.2009 09:04
Titel

Antworten mit Zitat Zum Seitenanfang

Wollte grad den Quelltext einfügen als ich den Fehler gefunden hab * Wo bin ich? *

Das Datum steht ja so '2009-08-22' in der DB.
Code:
echo date("d.m.Y", mktime(0, 0, 0,
                  substr($row['ABLAUFDATUM'], 5, 2),
                  substr($row['ABLAUFDATUM'], 7, 2),   // <--- *hust* *hüstel*
                  substr($row['ABLAUFDATUM'], 0, 4)
                  )
         );

Manchmal frage ich mich echt, was mit mir los ist * Nee, nee, nee *

naja, thx an die schwarze ente^^
  View user's profile Private Nachricht senden
pixelpapst303

Dabei seit: 06.07.2006
Ort: hamburg
Alter: 50
Geschlecht: Männlich
Verfasst Mi 02.09.2009 09:08
Titel

Antworten mit Zitat Zum Seitenanfang

emorikaner hat geschrieben:
Das Datum steht ja so '2009-08-22' in der DB.


genau darauf wollte ich hinaus...


emorikaner hat geschrieben:
Manchmal frage ich mich echt, was mit mir los ist


das gehört dazu, sonst hättest du n vernünftigen beruf Grins


emorikaner hat geschrieben:

naja, thx an die schwarze ente^^


büdde *zwinker*


Zuletzt bearbeitet von pixelpapst303 am Mi 02.09.2009 09:08, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
bacon

Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Mi 02.09.2009 09:31
Titel

Antworten mit Zitat Zum Seitenanfang

maisequel liefert selbst ziemlich mächtige Funktionen zum hantieren mit Date und Datetime-Feldern mit, benutz' die und du kannst dir den ganzen php/client-seitigen Hick-Hack sparen:

http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_date-format

Code:
SELECT DATE_FORMAT(mydate, '%d.%m.%Y') FROM[...];


Wenn du es wirklich PHP-seitig machen willst, benutze strtotime() anstatt den Mist selbst auseinanderzupflücken:

Code:
$date = date('d.m.Y', strtotime('2009-8-21'));


Zuletzt bearbeitet von bacon am Mi 02.09.2009 09:35, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
emorikaner
Threadersteller

Dabei seit: 23.06.2009
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Mi 02.09.2009 09:39
Titel

Antworten mit Zitat Zum Seitenanfang

pixelpapst303 hat geschrieben:
das gehört dazu, sonst hättest du n vernünftigen beruf Grins

ich mach den Job ja auch nur weil ich Gleitzeit hab *bäh* (!Achtung Ironie!)

@bacon thx werd den Quellcode dann mal auseinandernehmen muahaha
  View user's profile Private Nachricht senden
 
Ähnliche Themen [MySql] ORDER BY - Frage
[mysql] ORDER BY mit CASE oder IF?
MySQL / case & group by & order
MySql ['order' wird nicht ausgeführt]
mySQL Abfrage sortiert Jan - Dez wie?
[MYSQL & PHP || GELÖST] -> Join-Abfrage
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.