【问题标题】:Where JSON dataJSON数据在哪里
【发布时间】:2011-10-30 16:53:07
【问题描述】:

我想现在在哪里完成日期,数据库表中的日期为偏移量 2 中的 JSON(例如:2011/10/30 = date nowEtc.),在我的尝试中输出行数为 0。怎么办?

我在表格中的列:

$today = date("Y/m/d"); // This is 2011/10/30
$query = $this->db->query("SELECT * FROM table WHERE new_date LIKE $today");
echo $query->num_rows(); // This output is "0"

【问题讨论】:

  • 对不起 :))。你能帮帮我吗?
  • 在数据库中,您的格式为“2011\/10\/29”,但您使用“2011/10/29”作为“$today”的值。尝试两件事:a) 在 $today 周围加上引号:"SELECT * FROM table WHERE new_date LIKE '$today'" 和 b) 将日期更改为 "2011\/10\/29" 格式并重试?
  • 嗨 JimBo - 在下面尝试我的答案 - 我忘记了 %% 分隔符。

标签: php json codeigniter


【解决方案1】:

试试这个:

$today = date("Y/m/d"); // This is 2011/10/30
$today = str_replace("/",'\/',$today); // match your db format in json

$sql = "SELECT * FROM `table` WHERE `new_date` LIKE '%$today%'";
echo $sql.'<br />'; // Copy this line below so we can see your output

$query = $this->db->query("SELECT * FROM `table` WHERE `new_date` LIKE '%$today%'");
echo $query->num_rows();

根据上面的 cmets。

【讨论】:

  • 您收到 SQL 错误消息还是没有结果?此外,您能否回显它产生的确切 $query 字符串:$sql = "SELECT * FROM table WHERE new_date LIKE '%$today"'"。您能否在使用之前回显并更新它给您的内容它在 ->db->query() 行上吗?
  • 只是没有结果,我用 print_r 查询的输出为:pastebin.com/XyEveZsa
  • 嗨,你能打印出查询“字符串”而不是查询对象吗?例如:SELECT * FROM table WHERE new_date LIKE '%2011\/10\/30%' 这样我们就可以看到它的要求了?
  • 对不起 :) 不要使用 $query 或 print_r($query) 或 var_dump($query)。这样做: $sql = "SELECT * FROM table WHERE new_date LIKE '%$today%'";回声 $sql;请将该 $sql 输出复制回此处?
  • 我使用 codeigniter。输出为:SELECT * FROM table WHERE new_date LIKE '%2011\/10\/30%'
【解决方案2】:

试试

$query = $this->db->query("SELECT * FROM table WHERE new_date LIKE '".$today."'");

【讨论】:

  • 不,仍然输出 num_rows 为“0”
  • 'new_date' 是如何形成的?我的日期就像'2011-10-30',也许你必须更改 $today 变量
  • 它是一个枚举吗?它是 V 还是 \ 和 / ?
猜你喜欢
  • 1970-01-01
  • 2017-06-23
  • 2019-11-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多