Hallo,
ich habe ein Problem mit meiner Blätterfunktion. Rufe ich die nächste Seite der Resultate auf, werden keine Inhalte angezeigt.
suche.php:
Ich hoffe, mir kann jemand helfen, auch wenn ich nebensächliche Funktionen nicht mit gelistet habe.
ich habe ein Problem mit meiner Blätterfunktion. Rufe ich die nächste Seite der Resultate auf, werden keine Inhalte angezeigt.
suche.php:
Code:
case:
break:
...
case 'start': // includiert nur das Template der Such-Start-Seite (Suchmaske)
break;
case 'result'; // output der Sucherg.
if(isset($_POST['username'])) { // $_POST == Eingabefeld "username" im Template der Suchstartseite
$user = $_POST['username'];
$result = $db->query("SELECT COUNT(userid) AS count FROM user WHERE username like '%$user%'");
$db->fetch_row($row);
$count = $row['count'];
if(!isset($_GET['page'])) $page = 1;
else $page = $_GET['page'];
$elm_pp = 2;
// Hier werden die Seitennummerierungen gebaut
$tmpl->assign('pagecode',getPagecode($page,"search.php?a=result&username=".$user,$elm_pp,$count));
$result = $db->query("SELECT * from user where username like '%$user%'
ORDER BY userid DESC LIMIT ".$elm_pp*($page-1).",".$elm_pp);
$num_rows = $db->num_rows();
while($db->fetch_row($row,$result)) {
$erg = $username.$age ..;
$tmpl->assign('result',$erg); // 'result' ist der Platzhalter im Template
}
}
Code:
Die Funktion Pagecode:
function getPagecode($curpage,$link,$elm_pp,$whole_elm,$showNextPageLink=false) {
//evtl. keine Elemente vorhanden
//if(!$whole_elm>0 || !isset($whole_elm)) return("<span id=\"smalltext\"><b>Seite: 1</b>");
//keine Ausgabe falls alle Elemente auf eine seite passen
if($whole_elm<=$elm_pp) return "";
//evtl. keine gültige (aktuelle Seite) übergeben
if(!(is_numeric($curpage)) || !isset($curpage)) $curpage=1;
//Page Links erstellen
$pages = intval($whole_elm / $elm_pp);
if($whole_elm % $elm_pp <> 0) $pages++;
$pagecode = "";
if($pages<=20) {
for($i=1;$i<=$pages;$i++) {
if($i == $curpage) {
$pagecode .= " <b>$i</b> ";
} else {
$pagecode .=' <a href='.$link.'&page='.$i.'&show='.$show.'>'.$i.'</a> ';
}
}//for
}else {
//zu viele Seiten -> verkürzte Ausgabe
//aktuelle Seite am Anfang oder am Ende
if($curpage<=5 || ($curpage>=$pages-5)) {
//die ersten 5 seiten und die letzten 5 Seiten
for($i=1;$i<=7;$i++) {
if($i == $curpage) {
$pagecode .= " <b>$i</b> ";
} else {
$pagecode .=' <a href='.$link.'&page='.$i.'&show='.$show.'>'.$i.'</a> ';
}
}//for
$pagecode .= "...";
for($i=($pages-7);$i<=$pages;$i++) {
if($i == $curpage) {
$pagecode .= " <b>$i</b> ";
} else {
$pagecode .=' <a href='.$link.'&page='.$i.'&show='.$show.'>'.$i.'</a> ';
}
}//for
}else {
//akutelle Seite befindet sich in der mitte
//ersten 3 Seiten
for($i=1;$i<=3;$i++) {
if($i == $curpage) {
$pagecode .= " <b>$i</b> ";
} else {
$pagecode .=' <a href='.$link.'&page='.$i.'&show='.$show.'>'.$i.'</a> ';
}
}//for
$pagecode .= "...";
//3 Seiten vor der aktuellen, aktuelle Seite und 3 Seiten danach
for($i=$curpage-3;$i<=$curpage+3;$i++) {
if($i == $curpage) {
$pagecode .= " <b>$i</b> ";
} else {
$pagecode .=' <a href='.$link.'&page='.$i.'&show='.$show.'>'.$i.'</a> ';
}
}//for
$pagecode .= "...";
//die letzten 3 Seiten
for($i=($pages-3);$i<=$pages;$i++) {
if($i == $curpage) {
$pagecode .= " <b>$i</b> ";
} else {
$pagecode .=' <a href='.$link.'&page='.$i.'&show='.$show.'>'.$i.'</a> ';
}
}//for
}//else
}//else
if($showNextPageLink) {
//vorherige Seite
if(($curpage<>1) && ($curpage-1>0)) {
$pagecode = ' <a href="'.$link.'&page='.($curpage-1).'&show='.$show.'"><b>«</b></a>'.$pagecode;
}
//nächste seite
//echo "$curpage<>$pages<br>$curpage+1>=$pages";
if(($curpage<>$pages) && ($curpage+1<=$pages)) {
$pagecode .= ' <a href="'.$link.'&page='.($curpage+1).'&show='.$show.'"><b>»</b></a>';
}
}
$pagecode = "<span id=\"smalltext\"><b>".insertText('page').":</b>".$pagecode."</span>";
return($pagecode);
}
Ich hoffe, mir kann jemand helfen, auch wenn ich nebensächliche Funktionen nicht mit gelistet habe.