所以我想从数据库中的日期列中获取一个且仅第一个值,并将其放入我的 PHP 文件中,这是获取日期的代码片段:
$one = 1;
$Lihat="SELECT * FROM event where status = '$one'";
$Tampil = mysqli_query($db, $Lihat);
while ( $hasil = mysqli_fetch_array ($Tampil)) {
$query_start_date = "SELECT tgl_event
FROM jadwal_acara
WHERE id_event = '$id_event' AND status = $one
ORDER BY tgl_event ASC
LIMIT 1";
$result = mysqli_query($db, $query_start_date);
$start_date = mysqli_fetch_field($result);
<td class="tgl_mulai"><?php echo date('d-m-Y', strtotime($start_date));?></td>
问题是,当我尝试在表行中回显它时:
它返回一个错误,内容如下:
strtotime() expects parameter 1 to be string, object given.
有谁知道如何将其更改为字符串或其他方法以获得所需的显示结果?谢谢。
编辑:
$start_date = var_dump($start_date);当我测试它时返回 NULL 值。
注意:未定义的属性:stdClass::$tgl_event in 空
但我的其他行显示了正确的名称和事件 ID,只是日期无法正确显示。
现在显示:01-01-1970
最佳答案
mysqli_fetch_field()返回一个对象。而是使用 mysqli_fetch_assoc
试试这个:
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$query = "SELECT tgl_event FROM jadwal_acara WHERE id_event = ".$id_event." AND status = 1 ORDER BY tgl_event ASC LIMIT 1";
if ($result = mysqli_query($db, $query)) {
while ($finfo = mysqli_fetch_assoc($result)) {
$date = date('m-d-Y', strtotime($finfo['tgl_event']));
}
mysqli_free_result($result);
}
mysqli_close($db);
然后在 HTML 中:
<td class="tgl_mulai"><?php echo $date; ?></td>
关于php - 在php中显示来自mysql的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44473959/