MySQL 没有秒的日期
MySQL Date without seconds
我四处寻找我的问题的答案,似乎 DATE_FORMAT 函数应该允许我删除秒数 - 我需要从我的 table 中格式化一列,然后结果进入下拉框 - 我有以下代码;
$DepartSailing = mysql_query("SELECT DATE_FORMAT(SailingTime,'%h:%i %p') AS FormattedTime FROM wp_timetable WHERE CURDATE() BETWEEN StartDate AND EndDate") or die(mysql_error());
echo "<select name='adults' id='adults' style='width: 300px; height: 30px; padding: 5px;'>";
while ($row= mysql_fetch_array($DepartSailing)) {
echo "<option value='" . $row['SailingTime'] ."'>" . $row['SailingTime'] ."</option>";}
echo "</select>";
如果我只取出 DATE_FORMAT 函数,该语句就有效。但它显示秒数 - 谁能告诉我我做错了什么?
谢谢
因为您使用的是别名 AS FormattedTime
您需要将 $row['SailingTime']
更改为 $row['FormattedTime']
这里有一个关于别名的教程:
这是从该页面提取的示例:
SELECT [col1 | expression] AS `descriptive name`
FROM table_name
您还在使用已弃用的 MySQL API,它将从未来的 PHP 版本中删除。
- 您应该考虑使用
mysqli
with prepared statements, or PDO with prepared statements,它们更安全。
我四处寻找我的问题的答案,似乎 DATE_FORMAT 函数应该允许我删除秒数 - 我需要从我的 table 中格式化一列,然后结果进入下拉框 - 我有以下代码;
$DepartSailing = mysql_query("SELECT DATE_FORMAT(SailingTime,'%h:%i %p') AS FormattedTime FROM wp_timetable WHERE CURDATE() BETWEEN StartDate AND EndDate") or die(mysql_error());
echo "<select name='adults' id='adults' style='width: 300px; height: 30px; padding: 5px;'>";
while ($row= mysql_fetch_array($DepartSailing)) {
echo "<option value='" . $row['SailingTime'] ."'>" . $row['SailingTime'] ."</option>";}
echo "</select>";
如果我只取出 DATE_FORMAT 函数,该语句就有效。但它显示秒数 - 谁能告诉我我做错了什么?
谢谢
因为您使用的是别名 AS FormattedTime
您需要将 $row['SailingTime']
更改为 $row['FormattedTime']
这里有一个关于别名的教程:
这是从该页面提取的示例:
SELECT [col1 | expression] AS `descriptive name`
FROM table_name
您还在使用已弃用的 MySQL API,它将从未来的 PHP 版本中删除。
- 您应该考虑使用
mysqli
with prepared statements, or PDO with prepared statements,它们更安全。