3

これは多くの人にとって非常に単純な質問のように聞こえるかもしれませんが、基本的なdate_formatをmySQLステートメントで機能させ、phpを使用して表示するのに問題があるようです。これが私が現在持っているコードです:

$result = mysql_query("SELECT *, DATE_FORMAT('timestamp', '%W %D %M %Y') as date FROM articleDB WHERE userID='".$_SESSION["**"]."' ORDER BY timestamp DESC LIMIT 8");

次に、以下を使用して表示しようとします。

echo ' Posted: '.$row['timestamp'].''; 

必要なのは、PHPmyAdminタイムスタンプから必要な形式に日付をフォーマットすることです。

乾杯

4

3 に答える 3

7

) or nothing at all instead of single-quotes (クエリのフィールドの前後にバッククォート( ``'`)を使用します。

$result = mysql_query("SELECT *, DATE_FORMAT(`timestamp`, '%W %D %M %Y') as date FROM articleDB WHERE userID='".$_SESSION["**"]."' ORDER BY timestamp DESC LIMIT 8");

バックティック(フィールドの代わりに`` ) creates a reference to a table member, single-quotes creates a string (' ). You were basically trying toDATE_FORMAT 'タイムスタンプ'`。the string

また、を使用asしてフィールドエイリアスを作成しているため、出力時にエイリアスを使用してそのフィールドを参照する必要があります。

echo ' Posted: '.$row['date'];
于 2009-08-07T15:15:55.987 に答える
2

selectステートメントで計算/フォーマットする「日付」列を表示する必要があります。タイムスタンプ列にはフォーマットされていない元の日付値が含まれます。

echo ' Posted: '.$row['date'];
于 2009-08-07T15:12:51.187 に答える
0

SQLクエリでは、as dateにアクセスする日付の書式を定義するためです$row['date']

于 2009-08-07T15:13:54.227 に答える