$num=$_POST['data'];
$no = (int) $num;
$sql = "select * from uploads where id > '$no'"
上面的查询不工作properly.It正在显示的值低于第i觉得跟conversion.somebody问题,请帮忙解决这个问题比较操作SQL查询用PHP
$num=$_POST['data'];
$no = (int) $num;
$sql = "select * from uploads where id > '$no'"
上面的查询不工作properly.It正在显示的值低于第i觉得跟conversion.somebody问题,请帮忙解决这个问题比较操作SQL查询用PHP
你有Sno = ...
,它应该是$no = ...
。这是一个错字。
然后,查询中的数字不需要撇号,所以不要在此上下文中使用它们。
你也有$_post
而不是$_POST
- 这是另一个问题,variables in PHP are case-sensitive。
这是我正在说的... – soyuka 2013-02-16 12:04:46
您在值的周围有撇号,因此这些值将作为字符串进行比较,而不是数字。例如,字符串值10
小于字符串值2
。
删除撇号:
$sql = "select * from uploads where id > $no";
我如何删除它? – user2067403 2013-02-16 12:07:11
@ user2067403:从字符串中删除撇号。就像我展示的一样。 – Guffa 2013-02-16 12:08:33
@ user2067403 - 他做到了; '''是问题所在。还要注意,'$ no =(int)'';'(as,'$ _POST ['data']'是空的)会在你的查询中给你'0'。仅供参考。 – 2013-02-16 12:09:11
与此
$sql = "select * from uploads where id > ".$no;
尝试,并把$ _ POST,而不是$ _ POST
那我的...我发正确答案第一对.. ?? – Gautam3164 2013-02-16 12:12:48
试试这个代码,而不是:
if (empty($_POST['data'])){
// show error message
echo "No data received";
// use a default values
$num = 0;
}
else
$num=$_POST['data'];
$no = intval($num);
$sql = "select * from uploads where id > $no";
尝试使用intval,而不是铸造到int
你在'else'中有一个错字。 – 2013-02-16 12:07:30
谢谢:)我已经修复了它 – 2013-02-16 12:08:02
请记住,没有大括号的简写形式可能会让非程序员和初学者感到困惑。 ':)' – 2013-02-16 12:11:20
除非你复制它,我不知道'$ _post'将工作;它应该是'$ _POST'。 – 2013-02-16 12:03:21
我不明白。 – user2067403 2013-02-16 12:03:30
@ user2067403你的代码的第二行,它应该是'$ no'而不是'Sno' – gopi1410 2013-02-16 12:04:08