Herbert_G: Hilfe bei Zeitanzeige benötigt (MySQL, PHP)

Hallo!

Bei Google News gibt es bei der Anzeige einen Hinweis, wie lange die News schon online sind bzw. wann sie eingestellt wurden, bsp.:

Merkel besucht deutsche Soldaten in Kundus
Deutsche Welle - ‎Vor 54 Minuten‎

Einen solchen Hinweis würde ich auch gerne übernehmen, also die Zeitangabe.
Ich habe mir jetzt das http://de.php.net/manual/de/function.date.php durchgelesen und auch diverse Dinge versucht, bin aber zu keiner Lösung gekommen. Das Manual auf seine bestimmten Wünsche anzupassen, ist für einen Laien auch nicht so einfach. Daher meine Frage: Könntet Ihr mir unter die Arme greifen? Ich verwendet PHP, eine MySQL-Datenbank und "datetime".

Vielen Dank!

  1. Hallo Herbert

    Im PHP Manual zu time() hat ein (oder eine) yasmary eine nette Funktion gepostet & erklärt:

    http://de.php.net/manual/de/function.time.php

    Die Ergänzung vom 6.März 09 (gleich die erste): function nicetime($date)

    Ich denke, die macht was du möchtest.

  2. Hello,

    es gibt unterschiedliche Wege, die nach HTML führen.

    Skizziert könnte das so aussehen:

    <?php   ### timediff.php ###

    $datetime = "20090406 10:50:00";

    $timestamp1 = strtotime($datetime);
    $timestamp2 = time();

    echo "<p>$timestamp1, $timestamp2, ".($timestamp2 - $timestamp1).": ".date('Y-m-d H:i:s',$timestamp2)."<p>\r\n";

    $timediff = $timestamp2 - $timestamp1;

    $days    = floor($timediff / (24 * 60 * 60));
    $hours   = floor( ($timediff - $days * 24 * 60 *60) / (60 * 60) );
    $minutes = floor( ($timediff - $days * 24 * 60 *60 - $hours * 60 * 60) / 60 );
    $seconds = $timediff - $days * 24 * 60 *60 - $hours * 60 * 60 - $minutes * 60;

    Echo "<p>Die Differenz beträgt $days Tage, $hours Stunden : $minutes Minuten : $seconds Sekunden</p>\r\n";
    ?>

    Damit es nachher aber keine Fehler mit unterschiedlichen Zeitzonen-Einstellungen gibt, sollten sowohl der $timestamp1 als auch der $timestamp2 aus der Datenbankabfrage stammen. Dafür kannst Du ein Feld "now() as aktuelle\_zeit" in die sql-Abfrage einbauen.

    Liebe Grüße aus dem Cyberspace

    Tom vom Berg

    --
    Nur selber lernen macht schlau
    http://bergpost.annerschbarrich.de