daniel: logik - bin ich einfach zu doof ??

hallo alle zusammen,

entweder es ist schon zu spät, oder bin einfach zu blöd dazu....

ich versuche gerade mal spaßeshalber ein weblog zu schreiben.
in einer mysql-datenbank speichere ich zu jedem eintrag einen datetime eintrag mit datum und uhrzeit an dem der eintrag gemacht wurde.

nun will ich das ganze auslesen, und hier kommt mein problem:

einträge die am gleichen tag (aber eben zu unterschiedlichen zeiten) gemacht wurden, sollen als "block" angezeigt werden (z.B. mit einer <hr> als trenner zum nächsten tag.

also so:

---------------------------
15.10.2002 - 15:15
blablalalbölallalbalabllla
alsalsd avaödsköa slkda
15.10.2002 - 09:32
ajsdjasljlkjsadlkjsakl
dskasjkdjsajd
---------------------------
14.10.2002 - 12:23
sajdlkjaskdjasd
asjkdjaskdjkasjdkajsjda
14.10.2002 - 08:24
asdasda
--------------------------
13.10.2002 - 13:20
usw.

ich check einfach nicht, wie ichs php beibringen soll?
ich lese meine db vereinfacht so aus:

//AUSGABE BLOG
while($blog=mysql_fetch_array($query))
{
 $datum = explode(" ",$blog['datetime']);
 $tag = $datum[0]; zeit= $datum[1];

echo $tag."-".$zeit;
echo $blog_eintrag;
}
?>

wie kann ich da ansetzen?
ich hab irgendwie keine idee?
falls $tag GLEICH $tag im schleifendurchlauf davor war kommt keine <hr> dauzwischen, falls nicht kommt eine.
aber wie geh ich das rein logisch an???

viele dank für eine idee...

grüße,
daniel

  1. Hallo!

    falls

    if (

    $tag

    $tag

    GLEICH

    =

    $tag

    $tag_alt

    )

    im schleifendurchlauf davor war kommt

    {

    keine <hr> dauzwischen, falls nicht kommt eine.

    das soltst Du liebr umdrehen, also

    if($tag != $tag_alt) {
        echo "<hl>";
    }
    $tag_alt = $tag;

    natürlicvh muß das in der Schleife stehen, so wie Du es auch gesagt hast.

    aber wie geh ich das rein logisch an???

    Eigentlich so wie Du es bereuts gemacht hast!

    Grüße
    Andreas

  2. Hallo Daniel,

    <?
    while($blog=mysql_fetch_array($query))
    {
      $datum = explode(" ",$blog['datetime']);
      $tag = $datum[0]; zeit= $datum[1];
      if($letzter_tag!=$tag)
      {
        echo "<hr>\n";
      }
      echo $tag."-".$zeit;
      echo $blog_eintrag;
      $letzter_tag=$tag;
    }
    ?>

    Viele Grüße
    Stephan

    1. Hi,

      $tag = $datum[0]; zeit= $datum[1];

      $zeit= $datum[1];
      also ich glaub das kommt noch ein dollarzeichen hin oder?
      bis denn,
      Toby