[英]PHP with mysql SELECT LIMIT
我在PHP中有一個請求(mysql)給了我很多結果,它就像一個魅力。 以下是給出115結果的請求示例:
public static function getInfo($start, $limit) {
$sql = Db::getInstance(_PS_USE_SQL_SLAVE_)->ExecuteS(
SELECT blablabla FROM blabla ORDER BY bla LIMIT $start,$limit
);
return $sql;
}
在我的php文件中,我有:
$rq = getInfo (0, 0);
$count_rq = (int)count($rq);
for ($i = 0; $i < $count_rq; ++$i) {
.... do my things ....
}
這是問題所在:在此配置中,它僅顯示結果1到42 ...
當我做一些修改/測試時,它顯示奇怪的結果:
Modification => for ($i = 42; $i < $count_rq; ++$i) {.......}
I got 0 result.
Modification => for ($i = 43; $i < $count_rq; ++$i) {.......}
I got results 43 from 115 !..
Modification => for ($i = 60; $i < $count_rq; ++$i) {.......}
I got results 60 from 115 !..
我試圖修改“限制”,但我不明白。 這是我做修改/測試時的結果:
(i'm using for ($i = 0; $i < $count_rq; ++$i) {.......})
Modification => $rq = getInfo (0, 20);
I got results 1 to 20.
Modification => $rq = getInfo (0, 50);
I got results 1 to 42.
Modification => $rq = getInfo (10, 0);
I got results 1 to 42.
Modification => $rq = getInfo (10, 30);
I got results 11 to 40.
我不知道如何展示我的所有結果? 我希望有一個代碼,當請求獲得115個結果時可以顯示115個結果,或者當請求獲得10個結果時可以顯示10個結果。 我怎樣才能做到這一點? 為什么我限制在前42個結果?
for
比任何其他事情環路0
? 如果您的請求獲得115行,您應該使用這句話來遍歷所有這些:
for($ i = 0; $ i <$ count_rq; ++ $ i)
祝好運。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.