繁体   English   中英

PHP MYSQL 查询中的变量问题

[英]Variable in PHP MYSQL query issue

我在 PHP 中有一个 SQL 查询,我试图将一个数字传递到 where 子句中。 如果我传递变量它不起作用,但是如果我手动输入变量它确实起作用。

我尝试转换为 int ,但仍然无法正常工作。

 $numYear = '2017';
 $numMonth = '3';

 $query_select = "SELECT date, url, EXTRACT(YEAR FROM date) AS numYear, EXTRACT(MONTH FROM date) AS numMonth, MONTHNAME(date) AS nameMonth FROM pages WHERE (url LIKE 'newspage/%' AND url NOT LIKE 'newspage/') AND (YEAR(date) = '.$numYear.' AND MONTH(date) = '.$numMonth.' ) ORDER BY date DESC LIMIT 1";

我是不是忘记了什么?

也许你刚刚使用了 dot 所以

$query_select = "SELECT url, summary, page_name, created_date, EXTRACT(YEAR FROM created_date) AS numYear, EXTRACT(MONTH FROM created_date) AS numMonth, MONTHNAME(created_date) AS nameMonth FROM pages WHERE (url LIKE 'news/%' AND url NOT LIKE 'news/') AND (YEAR(created_date) = '$numYear' AND MONTH(created_date) = '$numMonth' ) AND active = 1 ORDER BY created_date DESC LIMIT 1";

检查这个。

PS 你应该使用准备好的语句。

where 子句中的日期时间。

在日期时间会有""''

$DATE = "2017-12-31"
'SELECT * FROM Table WHERE date ='".$DATE."'ORDER BY ASE'

$DATE = "'".2017-12-31."'"
'SELECT * FROM Table WHERE date ='.$DATE

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM