我有一个页面如下搜索单词。我想一次显示5个结果。然后,当我点击show more按钮时,再获得5,依此类推。
1 - 我不太清楚如何在javascript中包含$ _POST ['search']。
2 - 我得到的结果有时会重复,这意味着我的“偏移”和“限制”定义不准确。
你能帮我吗?
<script src="jquery-1.8.3.js" language="javascript" type="application/javascript"></script>
<script>
$('#showMore').live('click',function(){
var offset = $('#displayData tr').length;
var limit = offset;
offset = offset+limit;
var search = "?????"; // I don't know how to implemet the search word
// in here
$.ajax({
url:'getResults.php',
type:'POST',
data: {offset: offset, search: search},
dataType:"text",
success: function(returnData){
$('#displayData').append(returnData);
}
})
})
</script>
$search=$_POST["search"];
$query2= mysql_query("SELECT *
FROM table
limit 0,5")
or die(mysql_error());
...
<input type="button" id="showMore" value="Show More" />
和Getresults.php(部分)
$offset = $_POST['offset'];
$search = $_POST['search'];
$query2= mysql_query("SELECT *
FROM table
limit $offset,5")
or die(mysql_error());
答案 0 :(得分:0)
我建议使用&#34; ORDER BY&#34;你的MySQL中的子句。这应该有助于防止您的结果在使用限制时重复。作为如何将代码切换到MySQLi的示例,它非常简单。
$link = mysqli_connect('DATABASE HOST', 'USERNAME', 'PASSWORD', 'DATABASE');
$query = "SELECT * FROM table ORDER BY id limit $offset, 5";
$results = mysqli_query($link, $query) or die('MySQL Error');
while ($results = mysqli_fetch_array($results)) {
print $results['Answer'];
}