通过变量组成sql语句报错
php调用Mysql数据库:
function getNum($testnum)
{
//连接数据库语句省略
$query = "select * from t_table where col= $testnum";
$result = mysql_query($query,$db);
$num = mysql_num_rows($result);
echo "num:".$num;
mysql_close($db);
return($num);
}
$result = getNum($thatnum) ;
col为bigint型。
调用getNum报错mysql_num_rows(): supplied argument is not a valid MySQL result resource in 。。。
如果sql里的变量加上单引号,变为$query = "select * from t_table where col= '$testnum'";就不报错,但是找不到数据(表里字段都不为空)。
如果调用时不传变量,直接传进去个常量$result = getNum('252366') ;也不报错,而且能取到数据。
怎么回事啊?研究了一天没弄明白,哪位达人帮帮忙吧!