GET,分配VARI得到標能夠POST數組並將其設置在查詢中的LIMIT中。
// you can also use isset instead of empty here and GET instead of POST
if(!empty($_POST['display'])) {
$limit = (int)$_POST['display']; // ensure the value is an integer
}
然後將$limit
變量放在您的LIMIT查詢中。
即:(和基本的MySQL)
SELECT col1, col2, col3 FROM TABLE WHERE col_x = 'xxx' LIMIT $limit
的問題,雖然是有點不清楚,所以沒有太多別的我可以添加到這一點。
旁註:LIMIT(帶SELECT)接受附加參數。即:LIMIT 0, 50
[LIMIT {[offset,] row_count | row_count OFFSET offset}]
編輯:
「的形式提交後我想要的選項僅50個結果得到標記爲選擇」
爲了保持選定的值,可以使用在選擇的選項的條件語句並檢查它是否等於什麼:
旁註:如果你的整個代碼是相同的文件中,此功能才能。
<?php
if(!empty($_POST['display'])) {
$limit = $_POST['display'];
$selected = 'selected';
}
?>
<form action="" method="post">
<select name="display">
<option value="9999" <?php if(isset($selected) && $limit==9999) {echo $selected; } ?>>Display all results</option>
<option value="10" <?php if(isset($selected) && $limit==10) {echo $selected; } ?>>10 results only</option>
<option value="20" <?php if(isset($selected) && $limit==20){echo $selected; } ?>>20 results only</option>
<option value="50" <?php if(isset($selected) && $limit==50){echo $selected; } ?>>50 results only</option>
<option value="100" <?php if(isset($selected) && $limit==100){echo $selected; } ?>>100 results only</option>
</select>
<input type="submit" value="submit">
</form>
您可以添加其餘的代碼。
你有太多的標籤在這裏的一件事。另外,答案很簡單。您將一個變量分配給POST/GET數組並將其放入您的查詢中。在你的其他問題http://stackoverflow.com/questions/38668132/building-a-mysqli-query-with-order-by-and-per-page-to-show只是做同樣的事情;但使用它作爲你的極限,*容易如餡餅。* –
張貼您的完整形式。 –
你標記爲mysql和mysqli和pdo所以你的問題不清楚。但是,您可以看到我在下面發佈的內容。這是我所能提供的最好的,給出你發佈的內容。 @Liberator –