先把January转换成和数据库中可识别的格式。

解决方案 »

  1.   

    我在网上参考MySQL的DATE_FORMAT函数试写了一个sql语句(select * from articles where DATE_FORMAT(create_time, "%M %Y")='.date("F Y",strtotime($store)),$store的格式是“January 2009”,我想把它转为时间格式,转换后还是“January 2009”,不过运行后却显示“Call to a member function fetch_assoc() on a non-object”错误,错误的地方就是我写的SQL语句那,究竟该怎么写呢 
      

  2.   

    你先用phpMyAdmin,看看能不能把你的字符串转换成时间值。
      

  3.   

    现在我有一种写法可以实现,就是把“January 2009”转换成“2009-01”,再对比数据有没有包含的
      

  4.   

    “January 2009”可以转换为“2009-01”,我用select * from articles where create_time like "%'.date("Y-m",strtotime($store)).'%"可以查到,不过还有没有别的方法呢?
      

  5.   

    例如可不可以用MySQL的DATE_FORMAT函数先把数据库中的时间数据格式改为“2009-01”,作为条件来查询
      

  6.   

    先用phpMyAdmin调试通过特定参数的SQL,然后用动态参数再拼接SQL。
      

  7.   

    那就先转成timestamp.看看是在PHP中转,还是在MySQL中转。
      

  8.   

    DATE_FORMAT,mysql日期函数//第一种
    $sql = select * from articles where DATE_FORMAT(create_time, '%Y-%d') = '". date("Y-m",strtotime($store)). "'";
    //第二种
    $sql = select * from articles where DATE_FORMAT(create_time, '%M %Y') = "$store'";
      

  9.   

    高不高试过才知道.
    有些时候还要自已定义mysql的函数呢,mysql自带的函数为什么不用.