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

我想要的只是将日期从 PHP myAdmin 时间戳格式化为我想要的格式。

干杯

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'timestamp'`the string而不是字段。

此外,由于您正在使用as创建字段别名,因此您希望在输出时使用别名引用该字段:

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

您需要在选择语句中显示您计算/格式化的“日期”列,时间戳列包含未格式化的原始日期值。

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

因为在您的 SQL 查询中,您定义了as date访问它的日期格式$row['date']

于 2009-08-07T15:13:54.227 回答