Hallo, ich habe schon in einen anderen Post mein Problem geschildert aber meiner Meinung zu unverständlich deshalb will ich hier eine neues Thema eröffnen. Es geht um eine Suchanfrage die auf mehreren Seiten verteilt werden soll.Dies klappt auch gut bis auf eins das wenn eine 2 seite ausgegeben werden soll einfach alle User angezeigt werden. Ich habe error reporting eingeschaltet und es scheint alles ok zu sein der Compiler seiter her.
Naja , hier ist mal das Skript
Suchanfrage
Ausgabe auf mehreren Seiten
mfg
skype20
Naja , hier ist mal das Skript
Suchanfrage
PHP:
// Prüfen ob das Formular gesendet wurde
if(isset($_POST['submit'])){
// Array initializieren. Falls kein argument angegeben wurde,
// dann ist die Argumentliste ein leeres Array
$wheres = array();
//Jedes Feld prüfen und ggf in den Where-Array einfügen
if($_POST['sex']) $wheres[] = "sex='{$_POST['sex']}'";
if($_POST['land']) $wheres[] = "land='{$_POST['land']}'";
if($_POST['username']) $wheres[] = "nickname LIKE '%{$_POST['username']}%'";
if($_POST['state']) $wheres[] = "state='{$_POST['state']}'";
if($_POST['status']) $wheres[] = "status='{$_POST['status']}'";
// WHERE-Tel des SQL-String zusammenstellen
if(count($wheres)>0) $wherestring = "WHERE ".implode(' AND ', $wheres);
//SQL-String zusammensetzen
$sql = mysql_query("SELECT * FROM `".PREFIX."user`{$wherestring}");
//TODO: Sql an die DB absetzen
}
// Anzahl der Mitglieder
$user_count= safe_query("SELECT * FROM ".PREFIX."user ");
$user_results= mysql_num_rows($user_count);
// Anzahl der Mitglieder
Ausgabe auf mehreren Seiten
PHP:
$maxusers = 2;
$alle = safe_query("SELECT * FROM `".PREFIX."user`{$wherestring}");
$gesamt = mysql_num_rows($alle);
$pages = ceil($gesamt/$maxusers);
if(isset($_GET['page'])) $page=(int)$_GET['page'];
else $page = 1;
$sort="nickname";
if(isset($_GET['sort'])){
if(($_GET['sort']=='country') || ($_GET['sort']=='nickname') || ($_GET['sort']=='lastlogin') || ($_GET['sort']=='registerdate')) $sort=$_GET['sort'];
}
$type="ASC";
if(isset($_GET['type'])){
if(($_GET['type']=='ASC') || ($_GET['type']=='DESC')) $type=$_GET['type'];
}
if($pages>1) $page_link = makepagelink("index.php?site=registered_users&sort=$sort&type=$type", $page, $pages);
else $page_link='';
if($page == "1") {
$ergebnis = safe_query("SELECT * FROM `".PREFIX."user`{$wherestring} ORDER BY ".$sort." ".$type." LIMIT 0,".$maxusers);
if($type=="DESC") $n=$gesam;
else $n=1;
}
else {
$start=$page*$maxusers-$maxusers;
$ergebnis = safe_query("SELECT * FROM `".PREFIX."user`{$wherestring} ORDER BY ".$sort." ".$type." LIMIT ".$start.",".$maxusers);
if($type=="DESC") $n = ($gesamt)-$page*$maxusers+$maxusers;
else $n = ($gesamt+1)-$page*$maxusers+$maxusers;
}
mfg
skype20