Timestamp (UNIX) nach Datum

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

sveka

Mitglied
26 Mai 2006
182
1
18
34
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
2 September 2020
133
28
28
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
26 Mai 2006
182
1
18
34
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
26 Mai 2006
182
1
18
34
@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
25 Oktober 2019
168
44
28
38
Code:
SELECT DATE_FORMAT(kommen, "%d/%m/%Y") as kommen FROM tabelle;

 

sveka

Mitglied
26 Mai 2006
182
1
18
34
Danke. Es funktioniert so wie es soll. Aber ich werde direkt mit "date" bzw. "datetime" in der Datenbank arbeiten.
 

sysop

Mitglied
10 Juli 2015
157
22
18
www.mn-portal.at
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
2 September 2020
133
28
28
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 …
 
  • Like
Reaktionen: m.scatello
Werbung:

Neueste Beiträge