anpera.net

anpera.net

experimental server @home
Aktuelle Zeit: Do 12 Jun, 2025 09:57

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 7 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Neues Addon: Wie gehts dir? Fehler
BeitragVerfasst: Di 09 Aug, 2005 15:32 
Offline
Profi
Profi

Registriert: Do 26 Mai, 2005 18:05
Beiträge: 149
Hi,

also ich hatte mal wieder eine Idee:
Ich wollte ein Skript verfassen wo man seine Stimmung aus wählen konnte und diese dann in Form von Smilies in der Kämpferlist angezeigt wird. Nun ich habe alles hin gekriegt. Vom Smilie erstellen bin hin zum Skriepte schreiben! Aber das mit der Kämpferliste verstehe ich nicht.

Ich habe ihrgend etwas Falsch gemacht. Nur weiss ich nicht wie man es richtig macht. Wenn ich nämlich die Krieger lisst auf rufe. Stehen alle Smilies über der Tabelle und die Tabelle fängt danchan. Auch die Smilies stimmen nicht denn wähle ich bei mir eine stimmung aus. Verändert sich nichts.

Hier das Kämpferlistenskript:

$this->bbcode_second_pass_code('', '<?php

// 15082004

require_once "common.php";
if ($session[user][loggedin]) {
checkday();
if ($session[user][alive]) {
addnav("Zurück zum Dorf","rdr.php");
} else {
addnav("Zurück zu den Schatten", "shades.php");
}
addnav("Gerade Online","list.php");
}else{
addnav("Login Seite","index.php");
addnav("Gerade Online","list.php");
}
page_header("Kämpferliste");

$playersperpage=50;

$sql = "SELECT count(acctid) AS c FROM accounts WHERE locked=0";
$result = db_query($sql);
$row = db_fetch_assoc($result);
$totalplayers = $row['c'];

if ($_GET['op']=="search"){
$search="%";
for ($x=0;$x<strlen($_POST['name']);$x++){
$search .= substr($_POST['name'],$x,1)."%";
}
$search=" AND name LIKE '".addslashes($search)."' ";
//addnav("List Warriors","list.php");
}else{
$pageoffset = (int)$_GET['page'];
if ($pageoffset>0) $pageoffset--;
$pageoffset*=$playersperpage;
$from = $pageoffset+1;
$to = min($pageoffset+$playersperpage,$totalplayers);

$limit=" LIMIT $pageoffset,$playersperpage ";
}
addnav("Seiten");
for ($i=0;$i<$totalplayers;$i+=$playersperpage){
addnav("Seite ".($i/$playersperpage+1)." (".($i+1)."-".min($i+$playersperpage,$totalplayers).")","list.php?page=".($i/$playersperpage+1));
}

// Order the list by level, dragonkills, name so that the ordering is total!
// Without this, some users would show up on multiple pages and some users
// wouldn't show up
if ($_GET['page']=="" && $_GET['op']==""){
output("`c`bDiese Krieger sind gerade online`b`c");
$sql = "SELECT acctid,name,login,alive,location,sex,level,laston,loggedin,lastip,uniqueid,race FROM accounts WHERE locked=0 AND loggedin=1 AND laston>'".date("Y-m-d H:i:s",strtotime(date("r")."-".getsetting("LOGINTIMEOUT",900)." seconds"))."' ORDER BY level DESC, dragonkills DESC, login ASC";
}else{
output("`c`bKrieger in dieser Welt (Seite ".($pageoffset/$playersperpage+1).": $from-$to von $totalplayers)`b`c");
$sql = "SELECT acctid,name,login,alive,location,sex,level,laston,loggedin,lastip,uniqueid,race FROM accounts WHERE locked=0 $search ORDER BY level DESC, dragonkills DESC, login ASC $limit";
}
if ($session[user][loggedin]){
output("<form action='list.php?op=search' method='POST'>Nach Name suchen: <input name='name'><input type='submit' class='button' value='Suchen'></form>",true);
addnav("","list.php?op=search");
}

$result = db_query($sql) or die(sql_error($sql));
$max = db_num_rows($result);
if ($max>100) {
output("`\$Es treffen zu viele Namen auf diese Suche zu. Nur die ersten 100 werden angezeigt.`0`n");
}

output("<table border=0 cellpadding=2 cellspacing=1 bgcolor='#999999'>",true);
output("<tr class='trhead'><td><b>Level</b></td><td><b>Name</b></td><td><b>Rasse</b></td><td><b><img src=\"images/female.gif\">/<img src=\"images/male.gif\"></b></td><td><b>Ort</b></td><td><b>Status</b></td><td><b>Zuletzt da</b></td><td><b>Verfassung</b></td>",true);
for($i=0;$i<$max;$i++){
$row = db_fetch_assoc($result);
output("<tr class='".($i%2?"trdark":"trlight")."'><td>",true);
output("`^$row[level]`0");
output("</td><td>",true);
if ($session[user][loggedin]) output("<a href=\"mail.php?op=write&to=".rawurlencode($row['login'])."\" target=\"_blank\" onClick=\"".popup("mail.php?op=write&to=".rawurlencode($row['login'])."").";return false;\"><img src='images/newscroll.GIF' width='16' height='16' alt='Mail schreiben' border='0'></a>",true);
if ($session[user][loggedin]) output("<a href='bio.php?char=".rawurlencode($row['login'])."'>",true);
if ($session[user][loggedin]) addnav("","bio.php?char=".rawurlencode($row['login'])."");
output("`".($row[acctid]==getsetting("hasegg",0)?"^":"&")."$row[name]`0");
if ($session[user][loggedin]) output("</a>",true);
output("</td><td>",true);
output($colraces[$row['race']]);
output("</td><td align=\"center\">",true);
output($row[sex]?"<img src=\"images/female.gif\">":"<img src=\"images/male.gif\">",true);
output("</td><td>",true);
$loggedin=(date("U") - strtotime($row[laston]) < getsetting("LOGINTIMEOUT",900) && $row[loggedin]);
if ($row[location]==0) output($loggedin?"`#Online`0":"`3Die Felder`0");
if ($row[location]==1) output("`3Zimmer in Kneipe`0");
if ($row[location]==2) output("`3Im Haus`0");
output("</td><td>",true);
output($row[alive]?"`1Lebt`0":"`4Tot`0");
output("</td><td>",true);
//$laston=round((strtotime("0 days")-strtotime($row[laston])) / 86400,0)." Tage";
$laston=round((strtotime(date("r"))-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("r")."-1 day"))) $laston="Gestern";
if ($loggedin) $laston="Jetzt";
output($laston);
output("</td></td>",true);

if ($session[$row[pic]] == 0) output("???");

if ($session[$row[pic]] == 1) output("<img src='images/smilies/1.gif' width='50' height='50' alt='' align=''>",true);

if ($session[$row[pic]] == 2) output("<img src='images/smilies/2.gif' width='50' height='50' alt='' align=''>",true);


if ($session[$row[pic]] == 3) output("<img src='images/smilies/3.gif' width='50' height='50' alt='' align=''>",true);


if ($session[$row[pic]] == 4) output("<img src='images/smilies/4.gif' width='50' height='50' alt='' align=''>",true);


if ($session[$row[pic]] == 5) output("<img src='images/smilies/5.gif' width='50' height='50' alt='' align=''>",true);

}
output("</table>",true);
page_footer();
?>

')

Weiss jemand wie man das mit der Kämpferliste macht??? Ich hab alles Ausprobiert was ich aus den schon bestehenden Zeilen lesen konnte. :cry:

Schon mal Danke!


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Di 09 Aug, 2005 16:39 
Offline
Marquis Pherae
Marquis Pherae

Registriert: Mi 09 Feb, 2005 16:01
Beiträge: 3925
Wohnort: Basel
Geschlecht: Männlich
das is ja Voller Fehler.... Warum gibts du Bilder ausserhalb von den td-Tags aus, und innerhalb der table-Tags? Zudem...
Schau dir das mal genauer an... Da werden alle Felder aufgelistet, die ausgebenen werden. Dein Feld pic wird aber nicht aufgeführt, also KANNs nicht gehen...
[php]if ($_GET['page']=="" && $_GET['op']==""){
output("`c`bDiese Krieger sind gerade online`b`c");
$sql = "SELECT acctid,name,login,alive,location,sex,level,laston,loggedin,lastip,uniqueid,race FROM accounts WHERE locked=0 AND loggedin=1 AND laston>'".date("Y-m-d H:i:s",strtotime(date("r")."-".getsetting("LOGINTIMEOUT",900)." seconds"))."' ORDER BY level DESC, dragonkills DESC, login ASC";
}else{
output("`c`bKrieger in dieser Welt (Seite ".($pageoffset/$playersperpage+1).": $from-$to von $totalplayers)`b`c");
$sql = "SELECT acctid,name,login,alive,location,sex,level,laston,loggedin,lastip,uniqueid,race FROM accounts WHERE locked=0 $search ORDER BY level DESC, dragonkills DESC, login ASC $limit";
}[/php]

Und dann noch was unnötiges:

[php] if ($session[$row[pic]] == 0) output("???");

if ($session[$row[pic]] == 1) output("<img src='images/smilies/1.gif' width='50' height='50' alt='' align=''>",true);

if ($session[$row[pic]] == 2) output("<img src='images/smilies/2.gif' width='50' height='50' alt='' align=''>",true);


if ($session[$row[pic]] == 3) output("<img src='images/smilies/3.gif' width='50' height='50' alt='' align=''>",true);


if ($session[$row[pic]] == 4) output("<img src='images/smilies/4.gif' width='50' height='50' alt='' align=''>",true);


if ($session[$row[pic]] == 5) output("<img src='images/smilies/5.gif' width='50' height='50' alt='' align=''>",true);

}[/php]

Änder das so:

[php]if(file_exists("images/{$row['pic']}.gif")) output("<img src='images/smilies/{$row['pic']}.gif' width='50' height='50' alt='' align=''>",true);
else output("Stimmung unbekannt");[/php]


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di 09 Aug, 2005 18:01 
Offline
Profi
Profi

Registriert: Do 26 Mai, 2005 18:05
Beiträge: 149
Danke!

Es müsste doch aber:

$this->bbcode_second_pass_code('', 'if(file_exists("images/smilies/{$row['pic']}.gif"))')

statt:

$this->bbcode_second_pass_code('', 'if(file_exists("images/{$row['pic']}.gif"))')

heißen oder?

Und irgend wie stimmt noch etwas nicht. Denn wähle ich einen Smili aus und gehe dann wieder zur Kämpfer list passiert nichts. Ich glaube nicht das es an meinem Skript liegt da es ja forhin ging aber ich ihr könnt es ja angucken: http://www.philipp.rigoll.de/logd/sourc ... gd/gut.php

Ich denke es liegt am Sqlcode den ich verwendet habe:

$this->bbcode_second_pass_code('', 'ALTER TABLE `accounts` ADD `wuerfel` tinyint( 5 ) UNSIGNED DEFAULT '0' NOT NULL ;')


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di 09 Aug, 2005 18:07 
Offline
Marquis Pherae
Marquis Pherae

Registriert: Mi 09 Feb, 2005 16:01
Beiträge: 3925
Wohnort: Basel
Geschlecht: Männlich
Hab net gesehen, dass es daein subdir hat... Ja, sollte es...


Die SQL is falsch! da steht wuerfel, du rufst aber pic ab!

Zudem, hast du den ersten Tipp ausgeführt? Nein, hast du nicht, deshalb kanns nicht gehen! :baeh:


Erst lesen & denken, dann Fehler posten!

Zudem stimmt der HTMl-Code net für die Tabelle.
Habs dir auch schon geschrieben.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di 09 Aug, 2005 18:51 
Offline
Profi
Profi

Registriert: Do 26 Mai, 2005 18:05
Beiträge: 149
Danke :baeh:

Jetzt klappts :baeh:

Ich werde das dann mal als Addon veröffentlichen. Und dich "natürlich" darin erwähnen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di 09 Aug, 2005 19:47 
Offline
Marquis Pherae
Marquis Pherae

Registriert: Mi 09 Feb, 2005 16:01
Beiträge: 3925
Wohnort: Basel
Geschlecht: Männlich
Na also, geht doch... Und warum natürlich in Doublequotes? Hab nie gesagt dass ich ne erwähnung will, also erwähn mich auch nicht :P


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di 09 Aug, 2005 19:59 
Offline
Profi
Profi

Registriert: Do 26 Mai, 2005 18:05
Beiträge: 149
Ich hab gedacht dann wärst du böse auf mich. Aber wer nicht will der hat schon :D

Ich muss nurnoch warten bis anpera mir die Rechte gibt. *wart*


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 7 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 19 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen
Du darfst keine Antworten zu Themen in diesem Forum erstellen
Du darfst deine Beiträge in diesem Forum nicht ändern
Du darfst deine Beiträge in diesem Forum nicht löschen
Du darfst keine Dateianhänge in diesem Forum erstellen

Suche nach:
Gehe zu:  
POWERED_BY
Deutsche Übersetzung durch phpBB.de
anpera.net - Impressum