2016-08-08 34 views
0

Ich habe eine PHP-Seitenumbruch Seite mit Post senden durch den Benutzer, um etwas zu suchen, MySQL auf der ersten Seite Abfrage ist in Ordnung, aber in der nächsten Seite habe ich weiße leere Seite bekommen.Post Variable in PHP Paginierung halten

Unten ist der Paging-Code.

$_SESSION['nationality'] = $_POST['nationality']; 
$reclimit = 2; 

if(isset($_GET['page'])){ 
$page = $_GET['page']; 
} else { 
$page = 1; 
} 

$start = (($page-1) * $reclimit); 

$sql = "SELECT userid, name, LEFT(hkid, 4) as hkid, description, nationality, photo_1, photo_2, photo_3 FROM $tbl_name WHERE `nationality` LIKE '%$_SESSION[nationality]%'"; 
$records = $con->query($sql); 

$total = $records->num_rows; 
$tpages = ceil($total/$reclimit); 

$rec = "SELECT userid, name, LEFT(hkid, 4) as hkid, description, nationality, photo_1, photo_2, photo_3 FROM $tbl_name WHERE `nationality` LIKE '%$_SESSION[nationality]%' LIMIT $start, $reclimit"; 
$records = $con->query($rec); 

while ($row = mysqli_fetch_assoc($records)){ 

// Loop record 

} 

// Paging 
echo '<ul class="pagination pagination-lg">'; 
for($i=1; $i <= $tpages; $i++) { 
$active = $i == $page ? 'class="active"' : ''; 
echo "<li $active ><a href='$_SERVER[PHP_SELF]?page=" .$i. "'>" .$i. "</a></li>"; 
} 
echo '</ul>'; 

Antwort

0

Dies funktioniert für mich:

<?php 
$limit =3; 
if (!isset($_GET['pg'])) { 
    $pg = 1; 
} else { 
    $pg = $_GET['pg']; 
} 
$start = ($pg - 1) * $limit;       
$sql = "SELECT * FROM tableName LIMIT $start , $limit"; 
?> 
+0

Es ist nicht funktionieren. – kenleung

+0

plz fügen Sie den Code nach der Aktualisierung hier hinzu –