Ottenere mySQL date_format per visualizzare in PHP
-
12-09-2019 - |
Domanda
Questo potrebbe sembrare una domanda molto semplice a molti di voi, ma mi sembra di essere avere problemi a trovare un date_format di base per lavorare con la mia dichiarazione MySQL e poi da visualizzare utilizzando php. Ecco il codice che ho attualmente:
$result = mysql_query("SELECT *, DATE_FORMAT('timestamp', '%W %D %M %Y') as date FROM articleDB WHERE userID='".$_SESSION["**"]."' ORDER BY timestamp DESC LIMIT 8");
Poi cercando di visualizzarlo utilizzando:
echo ' Posted: '.$row['timestamp'].'';
Tutto quello che voglio è quello di formattare la data da un timestamp PhpMyAdmin al formato che voglio.
Saluti
Soluzione
Usa apici inversi ( `` ) or nothing at all instead of single-quotes (
'`) intorno al campo nella query:
$result = mysql_query("SELECT *, DATE_FORMAT(`timestamp`, '%W %D %M %Y') as date FROM articleDB WHERE userID='".$_SESSION["**"]."' ORDER BY timestamp DESC LIMIT 8");
I backtick ( `` ) creates a reference to a table member, single-quotes creates a string (
'). You were basically trying to
DATE_FORMATthe string
'timestamp'` al posto del campo.
Inoltre, dal momento che si sta utilizzando as
per creare un alias di campo, si vuole fare riferimento a quel campo utilizzando l'alias quando l'output:
echo ' Posted: '.$row['date'];
Altri suggerimenti
è necessario per visualizzare la colonna "data", che si calcola / formato nell'istruzione SELECT, la colonna timestamp contiene il valore data originale non formattato.
echo ' Posted: '.$row['date'];
dal momento che nella query SQL si definisce il as date
formattazione della data si accede da $row['date']
.