• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

[PHP / mySQL] News nach Datum (block) Ordnen

kstyle

Weigelts Zinszahler (Rotfranch)
Registriert
21.01.06
Beiträge
246
Hallo Leute,

ich versuch im moment die Ausgabe meines Newssystems zu ändern. Zur Zeit mache ich es über ein PHP Script, was die Daten aus der SQL Datenbank holt und dann per while schleife immer ausgibt (Die überschriften inkl. des Datums). Auf den Überschriften ist immer der jeweilige Link zur News.

Also so:
Code:
22.07.07 - Apfeltalk hat neue Server
22.07.07 - Apple bringt iPhone raus
20.06.07 - sidney weiß nicht was er machen soll
Nun möchte ich die Ausgabe allerdings ändern.. und ich hab keine Ahnung wie ich das Realisieren könnte.. hoffe ihr könnt mir helfen:

Es soll dann so aussehen.. also praktisch immer ein Block für ein Datum:
Code:
--- 22.07.07 ----------------------------
- Apfeltalk hat neue Server
- Apple bringt iPhone raus
--- 20.06.07 ----------------------------
- sidney weiß nicht was er machen soll
Wisst ihr vielleicht wie ich das Realisiseren könnte?

Grüße
Kevin
 

mfkne

Weisser Rosenapfel
Registriert
03.04.06
Beiträge
776
Mach erst eine Abfrage mit DISTINCT, die Dir jedes Datum nur einmal ausgibt, dann suche für jedes Datum nach News.
 

mewX

Wohlschmecker aus Vierlanden
Registriert
26.12.06
Beiträge
241
Oder, einfacher:
$vorher = "";
while($row = mysql_fetch_xy($sql)) {
if ($vorher != $row['datum']) {
echo "Datum: $row['datum']<br>";
}

.... ausgabe ...
$vorher = $row['datum'];
}
Verstehste?
 

kstyle

Weigelts Zinszahler (Rotfranch)
Registriert
21.01.06
Beiträge
246
Hi Leute,

nach langem hin und her hab ichs nun endlich geschafft so wie ich es wollte und nun funktioniert alles. Habs mit mewX'S methode gemacht, sehr gute Idee vielen Dank! :D

Grüße
Kevin

ps: Beitrag #100 :D
 

Irgendein Held

Oberösterreichischer Brünerling
Registriert
17.06.07
Beiträge
714
Oder, einfacher:
$vorher = "";
while($row = mysql_fetch_xy($sql)) {
if ($vorher != $row['datum']) {
echo "Datum: $row['datum']<br>";
}

.... ausgabe ...
$vorher = $row['datum'];
}
Verstehste?


$vorher = "";
while($row = mysql_fetch_xy($sql)) {
$vorher != $row['datum'] ? echo "Datum: $row['datum']<br>";

.... ausgabe ...
$vorher = $row['datum'];
}

Sollte auch gehen, spart unnötige Zeilen..
Ist nur eine Anregung und reine Geschmackssache.:innocent:
 

mewX

Wohlschmecker aus Vierlanden
Registriert
26.12.06
Beiträge
241
Das ist beides identisch (bis auf die Zeilen natürlich) :)
Beziehungsweise geht das überhaubt so? Ich dachte eigentlich so:
Code:
[COLOR=DarkRed]echo ($vorher != $row['datum'])?"Datum: $row['datum']<br>":"";
[/COLOR]
 

kstyle

Weigelts Zinszahler (Rotfranch)
Registriert
21.01.06
Beiträge
246
Ihr Zicken :p

habs auf meine art gemacht, brauchte nur ne idee wie ichs machen könnte (thx nochmal @mewX).

Gruß
Kevin
 

Irgendein Held

Oberösterreichischer Brünerling
Registriert
17.06.07
Beiträge
714
Iirc sind die Klammer nicht Notwendig.
Ob allerdings eine Bedingung für "nichterfüllen" angeführt werden muss, weiß ich nichtmehr. Werds vllt mal testen, wenn ich wieder Daheim bin.