$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