mysql where语句工作在phpmyadmin但不在网站上

时间:2011-09-13 22:20:52

标签: php mysql phpmyadmin

我有这个问题:

$res=mysql_query("SELECT * FROM `t_modules` WHERE nPageM='61'") or die(mysql_error());

在phpmyadmin中它返回(按预期)2行,但在页面上它返回0。 如果我使用

$res=mysql_query("SELECT * FROM `t_modules` WHERE nPageM<>'61'") or die(mysql_error());

$res=mysql_query("SELECT * FROM `t_modules`") or die(mysql_error());

它正确地在页面上运行它只是WHERE和=组合不起作用 我还检查了nPageM的类型是int(11)

更新

我可以对表中的其他列进行比较,但不能在nPageM上进行比较

$res=mysql_query("SELECT * FROM `t_modules` WHERE id_md='5'") or die(mysql_error());

正在工作。但我仍然不知道为什么它没有在nPageM列上工作

2 个答案:

答案 0 :(得分:1)

您是否确保在运行此代码之前已在php脚本中包含了与数据库的连接?

<?php
$con = mysql_connect('sqluser', 'sqlpassword', 'sqlserver');
$db = mysql_select_db('dbame', $con);

//now, make sure it's connecting
if (!$con) {
die('mysql connection error' . mysql_error());
}
if (!$db) {
die('mysql Database error' . mysql_error());
}
?>

答案 1 :(得分:0)

而是尝试在其周围加上括号:

$res=mysql_query("SELECT * FROM `t_modules` WHERE (nPageM<>'61') ") or die(mysql_error());