[英]Having trouble formatting a date in javascript from MySQL
我在 ajax 方面不是很有经验,并且无法从 MySQL 数据库格式化我的日期。
我试过使用 php date() function 但似乎无法让它正常工作。 在此格式化日期的最佳方法是什么?
$(document).ready(function(){
$.ajax({
type: "GET",
url: "../api/presentation/read.php",
dataType: 'json',
success: function(data) {
var response="";
for(var user in data){
response += "<tr>"+
"<td>"+data[user].date+"</td>"+
"<td>"+data[user].title+"</td>"+
"<td>"+data[user].speaker+"</td>"+
"<td><a href='update.php?id="+data[user].id+"'>Edit</a> | <a href='#' onClick=Remove('"+data[user].id+"')>Remove</a> | <a href='#' onClick=Active('"+data[user].id+"')>Active</a></td>"+
"</tr>";
}
$(response).appendTo($("#presentations"));
}
});
});
我尝试了一些类似的东西
"<td><?php echo date("+data[user].date+",dd-mm); ?></td>"+
这给出了“+01am31am[00000000UTCThu, 01 Jan 1970 00:00:00 +0000].01am31UTC+”的 output,我怀疑这是因为没有给日期 ZC1C425268E68385D1AB5ZZF74C 赋值
我希望 output 采用 dd-mm HH-MM 格式,而不是“2019-10-29 10:00:00”的 MySQL 日期时间格式
您以错误的方式混合 PHP 和 JavaScript。
首先,您必须知道 PHP 在服务器端执行,在您的浏览器上存在任何 HTML 或 JavaScript 之前。
也就是说,让我们再次阅读您的尝试:
“”
在这里,脚本的 PHP 部分将在服务器端运行,并且 data[...] 变量不存在那里,它也在一个字符串中(在双引号之间)。 由于这个字符串不是一个有效的日期,它将 output unix epoch 的开始。
为了解决这个问题,您需要在此处分离您的关注点。
在您的 Select 查询中进行更改,然后像现在一样做。
SELECT DATE_FORMAT(NOW(), '%d.%m.%Y %H:%i:%s')
结果
DATE_FORMAT(NOW(), '%d.%m.%Y %H:%i:%s')
27.10.2019 20:40:41
而不是 function now() 放入您的列名
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.