Formatera Timestamp

Tråden skapades och har fått 4 svar. Det senaste inlägget skrevs .
1
  • Medlem
  • Halmstad
  • 2011-03-28 23:35

Jag hotade för ett tag sen om att återkomma med mer nybörjarfrågor i PHP och nu är det dags för det. Jag vill visa det senaste datumet i timestamp-kolumnen Uppdaterad och det får jag ut så här

$sqldate = "SELECT max(uppdaterad) AS maxdatum FROM medlemmar";
$resultat = mysql_query($sqldate);
while ($row = mysql_fetch_array($resultat)) {
echo '<p>' .$row['maxdatum'] . '</p>';

Det ger mig då hela Timestamp värdet, dvs både datum och tid. Hur gör jag för att bara får ut datumet. Jag försökte med

echo '<p>' .date("Y-m-d", $row['maxdatum']). '</p>';

och en del andra varianter men inget fungerade.

En annan sak jag undrade över är om det är korrekt att använda "while"-funktionen. SQL-satsen ger ju bara ett värde och ska jag då använda samma teknik som när man har fler värden i resultatet eller finns det något bättre sätt?

  • Skribent
  • Sollentuna
  • 2011-03-29 08:44

I vilket format får du ut datumet ur databasen? date()-funktionen förväntar sig en timestamp, d.v.s. antalet sekunder sen 1 januari 1970 (Unix Epoch). Förmodligen får du konvertera datumet till en timestamp först, eller hitta nåt annat sätt att konvertera direkt.

Om du bara får ut en rad, eller vet att det bara är första raden du behöver, så behöver du inte använda while. Det räcker med "$row = mysql_fetch_array($resultat)".

  • Medlem
  • Halmstad
  • 2011-03-29 10:05

Det kommer ut så här

2011-03-23 23:27:43

och jag vill bara ha datumet.

  • Skribent
  • Sollentuna
  • 2011-03-29 11:05

Kika på explode()-funktionen, den kan hjälpa dig i det här fallet.

  • Medlem
  • Halmstad
  • 2011-03-29 20:11

Helt rätt Vassius, explode() gav mig exakt det jag ville.

Ett problem avklarat, 99 kvar.

1
Bevaka tråden