• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Timestamp (UNIX) nach Datum

sveka

Mitglied
Hallo liebe Gemeinde,

ich stehe mal wieder auf dem Schlauch ...

Folgenden Code habe ich ...

Code:
while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC))
    {
         
      echo "<tr>";
      echo "<td>" . $zeile['z_ID'] . "</td>";
      echo "<td>" . $zeile['kommen'] . "</td>";
      echo "<td>" . $zeile['gehen'] . "</td>";
      echo "<td>" . $zeile['F_ID_users'] . "</td>";
      echo "</tr>";
      
    }

Nun möchte ich den UNIX-Timestamp in den Zeilen "kommen" und "gehen" während der Ausgabe in ein normales Datumsformat ändern ... Habe verschiedene Varianten versucht aber es geht nicht. Hat jemand einen Lösungsansatz?
 

tk1234

Aktives Mitglied
Nun möchte ich den UNIX-Timestamp in den Zeilen "kommen" und "gehen" während der Ausgabe in ein normales Datumsformat ändern ... Habe verschiedene Varianten versucht aber es geht nicht.
Definiere "geht nicht". Was hast du genau versucht? date() wäre die richtige Funktion dafür wobei in der Datenbank kein Unixtimestamp gespeichert werden sollte sondern der MySQL-Datentyp DATETIME verwendet werden sollte.
 

sveka

Mitglied
Ich hatte z.B. versucht direkt vor der Ausgabe zu formatieren mit " date('d.m.y H:i:s',
$zeile['kommen']". Das ging nicht.

DATETIME wird wohl doch die bessere Wahl werden.
 

sveka

Mitglied
@m.scatello
Danke für deine Antwort.

Ich habe jetzt den UNIX Code gespeichert. Lese mit SELECT meine Tabelle aus.

Danach packe ich meine Ergebnisse ja in ein Array ...

Mein Select Befehl lautet:

Code:
// SQL-Anweisung

$sql = "SELECT * FROM zeiten";

$db_erg = mysqli_query( $db, $sql );
if ( ! $db_erg )
{
  die('Ungültige Abfrage: ' . mysqli_error());
}

und dann

Code:
while ($zeile = mysqli_fetch_array( $db_erg, MYSQLI_ASSOC))
    {
      .......

Benötige ich einen zweiten SELECT oder kann ich meinen irgendwie formatieren, damit ich den UNIX Timestamp mit deiner Variante gleich in ein neues Datum formatieren kann?
 

jonas3344

Aktives Mitglied
Code:
SELECT DATE_FORMAT(kommen, "%d/%m/%Y") as kommen FROM tabelle;

 

sysop

Mitglied
Mit stellen sich 2 Fragen:

1. Warum überhaupt das Format Timestamp nutzen und nicht date_time?
Naja,
z.B um dann mit diesen Werten in jeder Tabellenkalkulation rechnen zu können (Datum1 minus Datum2)?
Timestamp ist nichts anderes als eine 10 stellige Zahl und das ist prinzipiell einmal etwas gutes, weil universal einsetzbar.
 

tk1234

Aktives Mitglied
Timestamp ist nichts anderes als eine 10 stellige Zahl und das ist prinzipiell einmal etwas gutes, weil universal einsetzbar.
Es gibt ausreichend Funktionen um mit DATE- bzw. DATETIME-Werten rechnen zu können (sowohl direkt in der Datenbank als auch mit PHP), es gibt keinen Grund den Unixtimestamp zu speichern und sich so die Möglichkeit zu nehmen diese Funktionen (direkt) verwenden zu können.

Aber: das ist hier irrelevant, der Thread ist bereits 9 Monate alt und erledigt - ein Blick auf das Datum eines Threads hat noch nie geschadet …
 
Werbung:

Neueste Beiträge

Oben