Ich habe bei mir die Userliste in der Admingrotte ein wenig umgemoddet, weil mir auffiel das die Sortfuntion in jener garnicht so recht funktionierte: Es passierte nix, was schade aber nicht tragisch war (der Rest ging ja). Weiß nicht mehr woher ich die hatte oder ob es meine Schusseligkeit war oder aber der Fehler überall drinsteckt (Testet einfach mal die Überschriftenlinks über der Liste z.B. IP, Name etc. ob die Liste sortiert wird). Da die Fummelei relativ groß war, poste ich hier den ganzen Teil der dafür zuständig ist, wenn ich was vergessen habe dann Bescheid sagen, denn kommt die ganze Datei. Macht euch ne Sicherheitskopie! Ich weiß nicht, ob diese user.php fürchterlich original ist, da ich anfangs recht viel und wahllos umgebaut habe.
Eine Feinheit noch: Ich habe einige Buttons für unterschiedliche SU Level eingerichtet, wenn ihr die nicht habt dann sucht oder ändert:
[php]
if ($session[user][superuser]>=5){
output("[<a href='user.php?op=edit&userid=$row[acctid]'>Edit</a>|".
"<a href='user.php?op=del&userid=$row[acctid]' onClick=\"return confirm('Willst du diesen User wirklich löschen?');\">Del</a>|".
"<a href='user.php?op=setupban&userid=$row[acctid]'>Ban</a>|".
"<a href='user.php?op=debuglog&userid=$row[acctid]'>Log</a>]",true);
}elseif ($session[user][superuser]>=4){
output("[<a href='user.php?op=edit&userid=$row[acctid]'>Edit</a>|".
"`7Del`0|".
"`7Ban`0|".
"<a href='user.php?op=debuglog&userid=$row[acctid]'>Log</a>]",true);
}elseif ($session[user][superuser]>=3){
output("[`7Edit`0|".
"`7Del`0|".
"`7Ban`0|".
"<a href='user.php?op=debuglog&userid=$row[acctid]'>Log</a>]",true);
}
if ($session[user][superuser]>=4) addnav("","user.php?op=edit&userid=$row[acctid]");
if ($session[user][superuser]>=5) addnav("","user.php?op=del&userid=$row[acctid]");
if ($session[user][superuser]>=5) addnav("","user.php?op=setupban&userid=$row[acctid]");
if ($session[user][superuser]>=3) addnav("","user.php?op=debuglog&userid=$row[acctid]");
[/php]
und ersetzt ggf. mit:
[php]
output("[<a href='user.php?op=edit&userid=$row[acctid]'>Edit</a>|".
"<a href='user.php?op=del&userid=$row[acctid]' onClick=\"return confirm('Willst du diesen User wirklich löschen?');\">Del</a>|".
"<a href='user.php?op=setupban&userid=$row[acctid]'>Ban</a>|".
"<a href='user.php?op=debuglog&userid=$row[acctid]'>Log</a>]",true);
addnav("","user.php?op=edit&userid=$row[acctid]");
addnav("","user.php?op=del&userid=$row[acctid]");
addnav("","user.php?op=setupban&userid=$row[acctid]");
addnav("","user.php?op=debuglog&userid=$row[acctid]");
[/php]
Admins:
Bitte in Mods hochladen und mir evtl. auch mal die Rechte geben:
sucht also:
[php]
}elseif ($_GET[op]=="search"){
addnav("N?Neue Suche","user.php?op=");
[/php]
..... bis:
[php]
?>
[/php]
und ERSETZT alles mit:
[php]
}elseif ($_GET[op]=="search"){
addnav("N?Neue Suche","user.php?op=");
$sql = "SELECT acctid FROM accounts WHERE ";
$where="
login LIKE '%{$_POST['q']}%' OR
acctid LIKE '%{$_POST['q']}%' OR
name LIKE '%{$_POST['q']}%' OR
emailaddress LIKE '%{$_POST['q']}%' OR
lastip LIKE '%{$_POST['q']}%' OR
uniqueid LIKE '%{$_POST['q']}%' OR
gentimecount LIKE '%{$_POST['q']}%' OR
level LIKE '%{$_POST['q']}%'";
$result = db_query($sql.$where);
if (db_num_rows($result)<=0){
output("`\$Keine Ergebnisse gefunden`0");
$_GET[op]="";
$where="";
}elseif (db_num_rows($result)>100){
output("`\$Zu viele Ergebnisse gefunden. Bitte Suche einengen.`0");
$_GET[op]="";
$where="";
}elseif (db_num_rows($result)==1){
//$row = db_fetch_assoc($result);
//redirect("user.php?op=edit&userid=$row[acctid]");
$_GET[op]="search";
$_GET['page']=0;
}else{
$_GET[op]="search";
$_GET['page']=0;
}
if (isset($_GET['page'])){
$order = "acctid";
if ($_GET[sort]!="") $order = $_GET[sort];
$offset=(int)$_GET['page']*100;
$sql = "SELECT acctid,login,name,level,laston,gentimecount,lastip,uniqueid,emailaddress FROM accounts ".($where>""?"WHERE $where ":"")."ORDER BY \"$order\" LIMIT $offset,100";
$result = db_query($sql) or die(db_error(LINK));
output("<table>",true);
output("<tr>
<td>Ops</td>
<td><a href='user.php?op=search&sort=login'>Login</a></td>
<td><a href='user.php?op=search&sort=name'>Name</a></td>
<td><a href='user.php?op=search&sort=level'>Lev</a></td>
<td><a href='user.php?op=search&sort=laston'>Zuletzt da</a></td>
<td><a href='user.php?op=search&sort=gentimecount'>Treffer</a></td>
<td><a href='user.php?op=search&sort=lastip'>IP</a></td>
<td><a href='user.php?op=search&sort=uniqueid'>ID</a></td>
<td><a href='user.php?op=search&sort=emailaddress'>E-Mail</a></td>
</tr>",true);
addnav("","user.php?op=search&sort=login");
addnav("","user.php?op=search&sort=name");
addnav("","user.php?op=search&sort=level");
addnav("","user.php?op=search&sort=laston");
addnav("","user.php?op=search&sort=gentimecount");
addnav("","user.php?op=search&sort=lastip");
addnav("","user.php?op=search&sort=uniqueid");
$rn=0;
for ($i=0;$i<db_num_rows($result);$i++){
$row=db_fetch_assoc($result);
$laston=round((strtotime(date("c"))-strtotime($row[laston])) / 86400,0)." Tage";
if (substr($laston,0,2)=="1 ") $laston="1 Tag";
if (date("Y-m-d",strtotime($row[laston])) == date("Y-m-d")) $laston="Heute";
if (date("Y-m-d",strtotime($row[laston])) == date("Y-m-d",strtotime(date("c")."-1 day"))) $laston="Gestern";
if ($loggedin) $laston="Jetzt";
$row[laston]=$laston;
if ($row[$order]!=$oorder) $rn++;
$oorder = $row[$order];
output("<tr class='".($rn%2?"trlight":"trdark")."'>",true);
output("<td>",true);
if ($session[user][superuser]>=5){
output("[<a href='user.php?op=edit&userid=$row[acctid]'>Edit</a>|".
"<a href='user.php?op=del&userid=$row[acctid]' onClick=\"return confirm('Willst du diesen User wirklich löschen?');\">Del</a>|".
"<a href='user.php?op=setupban&userid=$row[acctid]'>Ban</a>|".
"<a href='user.php?op=debuglog&userid=$row[acctid]'>Log</a>]",true);
}elseif ($session[user][superuser]>=4){
output("[<a href='user.php?op=edit&userid=$row[acctid]'>Edit</a>|".
"`7Del`0|".
"`7Ban`0|".
"<a href='user.php?op=debuglog&userid=$row[acctid]'>Log</a>]",true);
}elseif ($session[user][superuser]>=3){
output("[`7Edit`0|".
"`7Del`0|".
"`7Ban`0|".
"<a href='user.php?op=debuglog&userid=$row[acctid]'>Log</a>]",true);
}
if ($session[user][superuser]>=4) addnav("","user.php?op=edit&userid=$row[acctid]");
if ($session[user][superuser]>=5) addnav("","user.php?op=del&userid=$row[acctid]");
if ($session[user][superuser]>=5) addnav("","user.php?op=setupban&userid=$row[acctid]");
if ($session[user][superuser]>=3) addnav("","user.php?op=debuglog&userid=$row[acctid]");
output("</td><td>",true);
output($row[login]);
output("</td><td>",true);
output($row[name]);
output("</td><td>",true);
output($row[level]);
output("</td><td>",true);
output($row[laston]);
output("</td><td>",true);
output($row[gentimecount]);
output("</td><td>",true);
output($row[lastip]);
output("</td><td>",true);
output($row[uniqueid]);
output("</td><td>",true);
output($row[emailaddress]);
output("</td>",true);
$gentimecount+=$row[gentimecount];
$gentime+=$row[gentime];
output("</tr>",true);
}
output("</table>",true);
output("Treffer gesamt: $gentimecount`n");
output("CPU-Zeit gesamt: ".round($gentime,3)."s`n");
output("Durchschnittszeit für Seitenerzeugung: ".round($gentime/max($gentimecount,1),4)."s`n");
}
}
page_footer();
?>
[/php]
Ich hoffe das war der Code, ist schon ein paar Tage her ... aber ich hab viel um die Ohrn.
LG
Uwe
_________________ Nein, ich bin NICHT der Admin dieses Forums, ich war schon immer ein anderer ... ich bin ... *schwupp* der Adminator (von Fochalan)! (in memory Darkwing Duck) LoGD Fochalan Edition http://logd.clochsliaph.de
|