我正在尝试获取 ID 和日期匹配的行数。我已经在 mysql 中运行了这个查询,它工作正常
SELECT COUNT(*) FROM table WHERE Id = '587762' && RequestDate = '2017-03-10'
但是在 php 中执行时它没有返回所需的结果。这是我的 php 文件
<?php
$pdo = new PDO('mysql:host=localhost;dbname=personDB','root','');
if($_SERVER['REQUEST_METHOD'] == 'GET'){
$Id = $_GET['ID'];
$date = date("Y-m-d", strtotime($_GET['date']));
$row_count = $pdo->query("SELECT * FROM table WHERE Id = '$Id' AND RequestDate = '$date'")->fetchColumn();
if($row_count > 0){
$response = false;
header('Content-Type: application/json');
echo json_encode($response);
}
else{
$response = true;
header('Content-Type: application/json');
echo json_encode($response);
}
}
?>
RequestDate 没有时间部分。我正在 postman 中检查它并给出已经存在的值它应该返回 false 但它总是返回 true。
最佳答案
我认为您使用的是字符串类型而不是日期类型。使用 strtotime()
将字符串转换为日期类型
试试这个:
$date = strtotime($_GET['date']);
关于php - mysql如何判断两个日期是否相等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42555090/