使用pdo从mysql检索今天的日期数据

时间:2015-07-31 14:49:47

标签: php pdo

我的表格中有一些[name][address][phone_number]的数据和此格式2015-10-14 14:37:38的日期。我正在使用php PDO。我怎样才能从表中查询今天的日期?

以下代码是我查询过去7天完美结果的代码。但是,每当我用1替换它时它都不起作用:

$query = $digital->query('SELECT * FROM sales WHERE `datetime` BETWEEN DATE_SUB(NOW(), INTERVAL 7 DAY) AND NOW() ORDER BY sale_id DESC'); 

我想要的是能够查询今天插入数据库的所有数据。

2 个答案:

答案 0 :(得分:0)

我不知道它是否适用于PDO,因为我不太熟悉它,但是我用它来传递var中的日期,然后在我的sql语句中要求匹配

// choose your own timezone here
date_default_timezone_set('America/Sao_Paulo');
// then define your variable as the current time:
$date = date("Y-m-d H:i:s");

然后,我使用正确的PDO语法将列与var进行比较(简单的"其中"语句应该这样做)。

(使用codeigniter语法)

$ this-> db-> where(' date',$ date);

答案 1 :(得分:0)

您可以使用此功能,尚未测试过。

<?php
$todaysDate = date('Y-m-d'); //if your date is stored in y-m-d format
        try
        {
            $s = $conn->query("SELECT * from sales where datetime LIKE '%$todaysDate%'");
        }
        catch(PDOException $e)
        {
            echo $e->getMessage();
        }
        $results = $s->fetch(PDO::FETCH_OBJ);

?>

您的查询结果现在位于$results变量。

扩展版

    <?php
try
        {
            $s = $conn->query("SELECT * from sales");
        }
        catch(PDOException $e)
        {
            echo $e->getMessage();
        }

    while($results = $s->fetch(PDO::FETCH_OBJ))
    {
        $date = explode(" ", $results->datetime);
        if($date[0] == date('Y-m-d'))
        {
            //write code here to display data
        }
    }

?>

确保替换所有columnNames和tablename。 编辑: - 这是与我的第一个解决方案有关的sqlfiddle。 http://sqlfiddle.com/#!9/7c2f1/3