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

È stato utile?

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 toDATE_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'].

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top