Tag ..
Ich habe versucht bei einer suchanfrage das Ergebnis auf mehreren seiten auszugeben sprich wenn die sucheanfrage 3 user findet dann kreiere eine 2 seite ... Leider ist mir das nicht gelungen wenn ich immer einen usernamen eingebe, gibt er mir alles aus. Ich denke er erkennt meine $entrie variable nicht.
hier mal der code:
PREFIX = ws_b9l_ (Teil name der DB). Ich habe auch id und name überprüft in entsprechenden template.
Danke für jede Antwort.
Ich habe versucht bei einer suchanfrage das Ergebnis auf mehreren seiten auszugeben sprich wenn die sucheanfrage 3 user findet dann kreiere eine 2 seite ... Leider ist mir das nicht gelungen wenn ich immer einen usernamen eingebe, gibt er mir alles aus. Ich denke er erkennt meine $entrie variable nicht.
hier mal der code:
PHP:
/* mitglieder suche */
$entrie=mysql_real_escape_string($_POST['username']);
$maxusers = 2;
$alle = safe_query("SELECT * FROM `".PREFIX."user` AS usr INNER JOIN `".PREFIX."buddys` AS b ON usr.userID = b.buddy WHERE b.userID = $userID AND b.banned=0 AND nickname LIKE '%".$entrie."%'");
$gesamt = mysql_num_rows($alle);
$pages = ceil($gesamt/$maxusers);
if(isset($_GET['page'])) $page=(int)$_GET['page'];
else $page = 1;
$sort="usr.userID";
if(isset($_GET['sort'])){
if(($_GET['sort']=='usr.userID') || ($_GET['sort']=='date')) $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=buddysearch&sort=$sort&type=$type", $page, $pages);
else $page_link='';
if($page == "1") {
$ergebnis = safe_query("SELECT * FROM `".PREFIX."user` AS usr INNER JOIN `".PREFIX."buddys` AS b ON usr.userID = b.buddy WHERE b.userID = $userID AND b.banned=0 AND nickname LIKE '%".$entrie."%'ORDER BY ".$sort." ".$type." LIMIT 0,".$maxusers);
if($type=="DESC") $n=$gesamt;
else $n=1;
}
else {
$start=$page*$maxusers-$maxusers;
$ergebnis = safe_query("SELECT * FROM `".PREFIX."user` AS usr INNER JOIN `".PREFIX."buddys` AS b ON usr.userID = b.buddy WHERE b.userID = $userID AND b.banned=0 AND nickname LIKE '%".$entrie."%' ORDER BY ".$sort." ".$type." LIMIT ".$start.",".$maxusers);
if($type=="DESC") $n = ($gesamt)-$page*$maxusers+$maxusers;
else $n = ($gesamt+1)-$page*$maxusers+$maxusers;
}
eval("\$result_usersearch_head = \"".gettemplate("buddysearch_head")."\";");
echo $result_usersearch_head;
if(!is_numeric($entrie)) {
echo '<table style="margin-top:0em;margin-left:0em;" width="100%" border="0" cellspacing="0" cellpadding="0" >';
$n = 1;
if($ergebnis) {
if(mysql_num_rows($ergebnis)==0) echo '• Es wurde kein Benutzer gefunden.';
while($sm=mysql_fetch_array($ergebnis)) {
$avatar='<img style="height:70px;width:70px;" src="images/avatars/'.getavatar($sm['avatar']).'" alt="" />';
$avatar = '<a style="color: #000000;" href="index.php?site=profile&id='.$sm['buddy'].'">'.$avatar.'</a>';
$nickname = '<a href="index.php?site=profile&id='.$sm['userID'].'">'.$sm['nickname'].'';
$nickname = htmlspecialchars($sm['nickname']);
if(strlen($nickname) > 7) $nickname = substr($nickname, 0,7).'...';
eval("\$result_usersearch = \"".gettemplate("buddysearch")."\";");
echo $result_usersearch;
$n++;
}
}
echo '</table>';
eval ("\$result_usersearch_foot = \"".gettemplate("buddysearch_foot")."\";");
echo $result_usersearch_foot;
echo '<div class="sm_back"><a href="index.php?site=registered_users"></a></div>';
return false;
}
echo '<div class="sm_back"><a href="index.php?site=registered_users">zurück</a></div>';
return false;
/* mitglieder suche ende*/
?>
PREFIX = ws_b9l_ (Teil name der DB). Ich habe auch id und name überprüft in entsprechenden template.
Danke für jede Antwort.