大家好,我有一个我从未遇到的有趣问题
我做了一个像这样的简单mysql选择
$menuDig = mysql_query("SELECT * FROM gl98t_posichool_tricks WHERE `category_id` = '$cid'");
当$cid
$cid = $trick['category_id'];
这是string(1) "1"
它可以工作,但当我像这样手动输入cid时
$cid = '1';
它不起作用。我在两个示例中都是var_dump,输出是相同的string(1) "1"
有谁知道问题出在哪里?
同样输出也很奇怪,因为$trick['category_id'];
在数据库中是整数但是当我把它放在$cid
时它是字符串
我首先虽然我必须将整数也放入$cid
,但它也不起作用。
答案 0 :(得分:0)
mysql_query("SELECT * FROM gl98t_posichool_tricks WHERE `category_id` = '$cid'");
从 $ cid 中删除单引号,然后再次检查
答案 1 :(得分:0)
试试这个
$cid = intval($trick['category_id']);
$cid = intval(1);
然后在你的sql中执行:
$menuDig = mysql_query("SELECT * FROM gl98t_posichool_tricks WHERE `category_id` = ".$cid);
答案 2 :(得分:0)
试试这个
$menuDig = mysql_query("SELECT * FROM gl98t_posichool_tricks
WHERE `category_id` = ".intval($cid) );
并在您的变量中使用此
$cid = 1; //without quotes.
答案 3 :(得分:0)
您是否尝试过不带变量的查询并检查结果?
$ menuDig = mysql_query(“SELECT * FROM gl98t_posichool_tricks WHERE category_id
= 1”);
试试这个并检查结果。
如果上述选项均无效,可能在其他地方出现问题......