【发布时间】:2017-11-14 18:10:54
【问题描述】:
我正在尝试将上一页的日期传递与存储在数据库中的日期(unix 时间戳格式)进行比较。我的代码如下。 错误:可恢复的致命错误:DateTime 类的对象无法在第 14 行的 C:\xampp\htdocs\check.php 中转换为字符串
我应该如何修改它以便能够与“datetime2”进行比较并存储为 10 位 unixtime。
基本上我不想将其转换为正常日期。只需按原样存储,10 位 unixtimestamp。
请帮助查看 foreach 循环。我想检查所选日期是否已出现在数据库中。
谢谢
<?PHP
session_start();
$userid = $_SESSION['userid'];
$datetime = $_POST['datetime'];
$available = 0;
$date = $datetime; $datetime2 = new DateTime($date); echo $datetime2->getTimestamp();
$con = mysqli_connect('localhost', 'root', 'abc123');
$query = "SELECT COUNT * FROM reservation WHERE InstallDate='" . $datetime2 . "'";
if (!$con)
{
die('Could not connect: ' . mysqli_error($con));
}
mysqli_select_db($con, 'btr');
foreach(mysqli_query($con, $query )as $row)
{
if($row <=1)
{
$available = 1;
echo $available;
}
}
mysqli_close($con);
?>
【问题讨论】:
-
为什么不使用
getTimestamp()来节省价值? -
我不明白。
-
您不想将其转换为日期,您只想使用 10 位字符串。但是,您所做的是从 10 位字符串开始,从中创建一个 DateTime 对象,然后将该 DateTime 对象传递给您的 SQL 查询。
-
我应该如何修改这个:$query = "SELECT COUNT * FROM reservation WHERE InstallDate='$datetime2'";