繁体   English   中英

在mysql查询的WHERE子句中使用php变量

[英]using a php variable in the WHERE clause of a mysql query

我正在运行一个我认为应该工作的非常简单的查询。 我之前没有做过的唯一事情是在查询的WHERE子句中放置一个php变量。 变量$ X是一个数值,例如100。运行此查询时,我得到的返回值为0。 我在做些明显愚蠢的事情吗?

SELECT generator_64k.n
FROM generator_64k
WHERE generator_64k.n<= '$X'

我在网上浏览了一下,还尝试了以下操作:

SELECT generator_64k.n
FROM generator_64k
WHERE generator_64k.n<= '" . $X . "'

但这也只返回0。

有任何想法吗? 提前致谢。

$query = "SELECT generator_64k.n FROM generator_64k WHERE generator_64k.n<= {$X};";

试试这个,或发布您的PHP代码。

<?php
$X = 100;
$query = "SELECT n FROM generator_64k WHERE n <= $X";
$result = mysql_query($query);
if (!$result) {
   echo ('Query error: ' . mysql_error());
}

像这样

$sql="select `username` from `users` where id='$newid';";
mysql_query($sql);

这里$ newid是int值。 用户名之前和之后使用的符号,要获得此名称,您必须按esc下方的键。

例如php并使用变量$ query =“ select from from table1 where col1 <=”。$ myVariable;

$ result = mysql_query($ query);

mysql_query()函数在发生错误时返回false(false == 0),否则返回资源。 mysql_query不从结果集中返回值。 您必须使用mysql_fetch_assoc或类似方法从结果集中获取行。

另外,请确保将查询用双引号引起来,以便PHP可以扩展变量$X

使用mysql_error从上次调用mysql_query时获取错误。

数值附近不能包含' MySQL将其视为字符串。

你应该这样做

" WHERE number <= " . (int)$val . " .. "

// or (but not recommended due to security problem)
" WHERE number <= $val "

暂无
暂无

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

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