PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Gruppenwechsel


raldolfo
04.02.2004, 13:39:46
Hallöle,

ich brauche mal einen Denkanstoß.
Ich möchte einen Gruppenwechsel realisieren (PHP und MySQL), habe alle Möglichkeiten die ich im Netz gefunden habe durchprobiert aber nichts funzt.
Ich möchte die Datenbankeinträge nach Datum ausgeben (den neusten zuerst). Es gibt Felder für Tag, Monat und Jahr. Soweit klappt das auch aber ich möchte das zwischen den einzelnen Tagen (alle Tage mit gleichen Datum sollen einen Block bilden) ein Banner erscheint und da liegt mein Problem, wie kann ich die einzelnen Tage trennen. Für einen Anstoß in die Richtige Denkrichtung wäre ich dankbar.

cu
Ralf

Yzerman
04.02.2004, 14:36:44
Mit MySQL kannst Du nur alle auf einmal auslesen.
Die Trennung kannst Du aber einfach bei der Ausgabe machen, indem Du einfach eine Kontrollstruktur programmierst, die merkt, wenn das Datum vom aktuellen Datensatz sich gegenüber dem vorhergehenden geändert hat.
Unglücklich ist es allerdings, dass Du für Tag, Monat und Jahr jeweils ein eigenes Feld genommen hast. Hier hättest Du besser nur ein Feld genommen. MySQL bietet dazu extra den passenden Typ, der die Daten nach dem Schema YYYY-MM-DD im Feld ablegt (DATE).
Mit Deiner DB-Struktur wird das wesentlich komplizierter.

FrozenFrank
26.02.2004, 20:34:19
Hallo zusammen,

finde es eigentlich auch erstaunlich, daß sich im Web so wenig konkretes zum Thema "Gruppenwechsel" finden lässt ...

Das programmiertechnische Prinzip des Gruppenwechsels ist mir bekannt, bin allerdings PHP/mySQL-Newbie, deswegen folgende Frage :

Komme ja nun nicht drumherum den Schlüssel der ersten Gruppe in einer Hilfsvariable abzulegen, also nach dem SELECT-Statement und bevor die äußere WHILE-Schleife beginnt ... wie krieg ich denn jetzt den Inhalt des Feldes "Reihe 1, Spalte 1" in meine $temp, ohne daß dann beim

while($row = mysql_fetch_row($result)) { ...

mit der zweiten Tabellenzeile weitergearbeitet wird ?

Ich Laie würde ja nun hingehen und es mit :

$result = mysql_query("SELECT blabla ...
$temp = mysql_result($result,0,"tabelle.spalte1");

versuchen ... die Verarbeitung in genannter WHILE-Schleife geht dann halt aber leider in der zweiten $result-Array-"Zeile" weiter - muss ich irgendwiewas zurücksetzen ?

Danke für eure Hilfe ... weitere Gruppenwechselverarbeitungsproblemchen folgen dann garantiert ;-)

Frank