2013-07-05 94 views
1

我正在写一个简单的脚本,使用php/mysql作为记录,我保存了记录并且工作完美。页面上一页/下一页PHP MYSQL

我的问题是,我需要只显示4条记录,并有一个传呼机去下一个/上一页。

有人可以给我一个代码吗?

这里是我的代码:

$result = mysqli_query($con,"SELECT * FROM products Where username='$_SESSION[username]' LIMIT 0, 4"); 


while($row = mysqli_fetch_array($result)) 
    { 
    echo "<tr>"; 
    echo "<td width='25%'>". $row['serial'] . "</td>"; 
    echo "<td><img width='65' height='65' src='upload/".$row['image']."'></td>"; 
    echo "<td width='25%'>". $row['arrive'] . "</td>"; 
    echo "<td width='25%'>". $row['size']; "</td>"; 
    echo "</tr>"; 
} 
echo "</table>"; 

回答

1

好你要计算的起点,然后在你的sql查询中使用它 看看这段代码

// pagination 
$total_results = mysqli_num_rows(mysqli_query($con,"SELECT `username` FROM products Where username='$_SESSION[username]' ")); 

if(!isset($page_number)) 
    $page_number = (int)$_GET['page'] <= 0 ? 1 : (int)$_GET['page']; // grab the page number 

$perpage = 4; // number of elements perpage 


if($page_number > ceil($total_results/$perpage)) 
    $page_number = ceil($total_results/$perpage); 


$start = ($page_number - 1) * $perpage; 

$result = mysqli_query($con,"SELECT * FROM products Where username='$_SESSION[username]' LIMIT $start, $perpage"); 

另外,你可以看到总页数是ceil($total_results/$perpage),所以你可以使用它和$page_number来决定何时显示下一个/上一页

+0

可以更多解释请我想使用此代码..但我看到没有不同 – Basel

+0

哪一部分不清楚?你得到总结果,你抓住当前页面,并且你计算出它的起点 –

+0

它现在和我一起工作,并且我可以看到它的页面非常完美,但是我需要一个简单的帮助来回应'Next page';我想要点击它第一个它+1,当再次点击+1等。如何让它请.. – Basel

0

设置你的限制条款的变量,增量在0 4

//$_POST['limit']=0,4,8,12.... 
$start = $_POST['limit']; 
$result = mysqli_query($con,"SELECT * FROM products Where username='$_SESSION[username]' LIMIT $start, 4"); 
+0

好的我怎么能看到下面四条记录? – Basel

+0

更改0到4,然后更改8,然后12 ... –

0
<?php 
if (!isset($_GET['page']))) 
{ 
    $page = 1; 
} 
else 
{ 
    $page = (int)$_GET['page']; 
} 

$result = mysqli_query($con,"SELECT * FROM products Where username='$_SESSION[username]' LIMIT " . ($page - 1) * 4 . ", 4"); 

while($row = mysqli_fetch_array($result)) 
{ 
    echo "<tr>"; 
    echo "<td width='25%'>". $row['serial'] . "</td>"; 
    echo "<td><img width='65' height='65' src='upload/".$row['image']."'></td>"; 
    echo "<td width='25%'>". $row['arrive'] . "</td>"; 
    echo "<td width='25%'>". $row['size']; "</td>"; 
    echo "</tr>"; 
} 
echo "</table>"; 

echo '<br/>'; 
echo '<a href="http://website.com/yourPage.php?page=2">Next page</a>'; 
?> 
+0

请注意,此代码从URL中获取参数,并将它们放入SQL查询中,而不会进行卫生处理。它使它对SQL注入攻击开放。切勿将这样的代码放在活动服务器上,否则会发生不好的事情。 – acrosman

+0

是的,但这表明它有多简单。 –

+0

它不适合我,它给了一个空白页。 – Basel

相关问题