Zeige Source: index.php

Das Lesen des Source, um sich spielerische Vorteile zu verschaffen, ist nicht erlaubt. Solltest du Schwachstellen oder Fehler entdecken, bist du als Spieler verpflichtet, diese zu melden.

Und noch ein Hinweis für die Codekopierer unter Euch: Dieses Logd ist in großen Teilen umgeschrieben. Dies bedeutet, dass vermutlich wenig bis gar nichts läuft, was Ihr Euch von hier herunterladet. ;-) Einfacher ist es wahrscheinlich, wenn Ihr Euch per Hilfeanfrage ans Team wendet und dann bekommt Ihr auch die kompletten Codes mit Glück sogar mit Einbauanleitung.

<?php

// 09092004

if (!empty($_POST['template'])){
    
setcookie("template",$_POST['template'],strtotime(date("r")."+45 days"));
    
$_COOKIE['template']=$_POST['template'];
}

require_once 
"common.php";

if (
$_SESSION['loggedin']){
    
redirect("badnav.php");
}

page_header("LoGD von Silvanur");
page_title ("`qWillkommen im <acronym title='Land of the Green Dragon' lang='en'>LoGD</acronym> von Silvanur!");
$out "<div id='indexbg'>";

addnav ("Über Silvanur","about-silvanur.php");
addnav ("Neu hier?");
addnav ("Regeln dieser Welt""petition.php?op=rules",false,true);
addnav ("Über LoGD","about.php");
addnav ("Fragen und Antworten","petition.php?op=faq",false,true);
addnav ("Charakter erstellen","create.php");
addnav ("Das Spiel");
addnav ("Silvanesti","list.php");
addnav ("Tägliche News""news.php");
addnav ("Spieleinstellungen""about.php?op=setup");
addnav ("Passwort vergessen?","create.php?op=forgot");
addnav ("Die LoGD-Welt");
addnav ("LoGD Netz","logdnet.php");
addnav ("DragonPrime","http://www.dragonprime.net/index.php",false,false,true);
//addnav ("`@Partner werden?`0","partnerbewerbung.php");
//addnav ("Server-Partner");

//$out.="Willkommen bei Legend of the Green Dragon, schamlos abgekupfert von Seth Able's Legend of the Red Dragon.`n";
$out.="`c<p>Sei gegrüßt in Silvanur, dem freundlichen, kleinen <acronym title='Land of the Green Dragon' lang='en'>LoGD</acronym>-Server von nebenan. 
    <span lang='en'>Land of the Green Dragon</span> ist so ganz allgemein ein <span lang='en'>Online-Browsergame</span>. Silvanur im Besonderen ist übrigens 
    optimiert auf die Benutzung mit <span lang='en'>screenreader</span> oder Sprachausgabe und damit auch für Blinde ganz prima spielbar.</p>\n"
;
//Datum
    
$out.="`n`nWir schreiben den ".getgamedate().". und es ist ".getgametime()." uhr.`n\n";

//Next New Day in ... is by JT from <acronym title='Land of the Green Dragon' lang='en'>LoGD</acronym>.dragoncat.net
$out.="`b`@Nächster neuer Tag in: ".timetotomorrow()."`0`b`n`n\n";

//neuer Spieler
$newplayer db_fetch_assoc (db_query ("SELECT sex,name FROM accounts ORDER BY acctid DESC LIMIT 1"));
$out.="`^".($newplayer['sex']?"Unsere neueste Silvanesta":"Unser neuester Silvanesto")." $newplayer[name] sei herzlich willkommen!`n\n";

//letzter Drachentöter
$newdk=stripslashes(getsetting("newdragonkill",""));
$newdk db_field (db_query ("SELECT name FROM accounts WHERE acctid = '$newdk'"));
if (!empty (
$newdk))
    
$out.="`@Den letzten Drachen erledigte mit Stolz:`0 $newdk!`n\n";

//letzter roter Drachentöter
$newdk =stripslashes(getsetting("newreddragonkill",""));
$newdk db_field (db_query ("SELECT name FROM accounts WHERE acctid = '$newdk'"));
if (!empty (
$newdk)) 
    
$out.="`&Den letzten `\$Roten Drachen`& brachte $newdk dahin, wo er hingehört!`n\n";

//bester Drachentöter 
$dker  db_field(db_query("SELECT name FROM accounts WHERE superuser < 1 ORDER BY dragonkills DESC LIMIT 1")); 
$out.="`1Die meisten Drachen erledigte furchtlos:`0 $dker!`n\n";

//Meisten Tattoos
$max db_fetch_assoc (db_query ("SELECT MAX(herotattoo) AS max FROM accounts WHERE herotattoo > 0  AND superuser < 1"));
$result db_query ("SELECT name,herotattoo FROM accounts WHERE herotattoo = '$max[max]' AND superuser = 0 AND herotattoo > 0 ORDER BY login");
if (
db_num_rows ($result)) {
    
$names "";
    while (
$row db_fetch_assoc ($result)) {
        
$names.= $row['name']."`n";
    }
    
$out.="`%Silvanesto mit den meisten Segen der Tiergeister: $names mit $max[max] Tattoos !`n\n"
}
//Arenachampion 
$arenachamp db_field(db_query("SELECT name FROM accounts WHERE battlepoints > 0 ORDER BY battlepoints DESC LIMIT 1"));
$out.="`^Der Arenachampion heißt $arenachamp.`0`n\n";

/*$ehrenvollster = db_fetch_assoc (db_query("SELECT name, sex FROM accounts WHERE superuser = 0 ORDER BY reputation DESC LIMIT 1"));
$out.= "`@".($ehrenvollster['sex']?"Die ehrenvollste Silvanesta":"Der ehrenvollste Silvanesto")." ist $ehrenvollster[name].`0\n";*/

/*
$ill = db_field (db_query ("SELECT COUNT(*) FROM accounts WHERE infection"));
$out.="`n`\$Derzeit sind $ill Silvanesti an der `2`bInfluenza silvanestica`b`\$ erkrankt.`0`n\n";
*/    
// änderungen start anfang 
$jackpot=stripslashes(getsetting("jackpot","")); 
if (
$jackpot
    
$out.="`n`1Der Jackpot von`0 " .getsetting ("jackpot" ,0). " Goldstücken wartet bereits auf dich`0`n\n";

//Goldenes Ei 
if (getsetting("hasegg",0)){ 
  
$egg db_field (db_query ("SELECT name FROM accounts WHERE acctid = ".getsetting("hasegg",0))); 
  
$out.="`%Das goldene Ei ist im Besitz von $egg!`0`n";  
}else{ 
  
$out.="`4Niemand besitzt zur Zeit das goldene Ei!`0`n"
}

//amulett
if (getsetting("hasamulett",0)>0){
  
$amulett db_field (db_query ("SELECT name FROM accounts WHERE acctid = ".getsetting("hasamulett",0)));
   
$out.="`^Das Amulett der Macht ist im Besitz von $amulett!`0`n\n"
}else{
   
$out.="`4Niemand besitzt zur Zeit das Amulett der Macht!`0`n\n"


//kerker
$result db_query ("SELECT name FROM accounts WHERE prisondays > 0");
if(
db_num_rows($result) ==1)  {
    
$name db_field ($result);
    
$out.="`\$$name `\$sitzt derzeit im Kerker.`0`n\n";
} elseif(
db_num_rows($result)) {
    
$count db_num_rows ($result);
    
$i 2;
    
$out.="`n";
    while(
$row db_fetch_assoc($result))  {
        
$out.=$row['name'];
        if (
$i == $count) {
            
$out.=" `\$und`0 ";
        } elseif (
$i $count) {
            
$out.= "`\$,`0 ";
        }
        
$i++;
    }
    
$out.=" `\$sitzen derzeit im Kerker.`0`n";
}


$news db_field(db_query ("SELECT newstext FROM news ORDER BY newsid DESC LIMIT 1"));
$out.="`b`@Letzte Neuigkeit:`0`b`n
        $news`0`n\n`c\n"
;
$out.="`n\n";
//logintime
$result db_fetch_assoc(db_query("SELECT COUNT(acctid) AS onlinecount FROM accounts 
    WHERE locked=0 
    AND loggedin=1 
    AND laston >'"
.date("Y-m-d H:i:s",strtotime("-".getsetting("LOGINTIMEOUT",900)." seconds"))."'"));
$onlinecount $result['onlinecount'];

// do not check if playerlimit is not reached!
if ($onlinecount >= getsetting("maxonline",10) && getsetting("maxonline",10)!=&& !empty ($_COOKIE['Silvanur_ID'])) {
    
$id=$_COOKIE['Silvanur_ID'];
    
$sql "SELECT superuser,uniqueid FROM accounts WHERE uniqueid='$id' AND superuser>0";
    
$result db_query($sql);
    if (
db_num_rows($result)) 
        
$is_superuser=1;
    else 
        
$is_superuser=0;
} else {
    
$is_superuser 0;
}

if (!isset(
$_COOKIE['PHPSESSID']))
    
$_SESSION['message'] =" Es scheint, als ob die Cookies dieser Seite von deinem System blockiert werden.  Zumindest Sitzungscookies müssen für diese Seite zugelassen werden.`n";

if (
$onlinecount<getsetting("maxonline",10) || getsetting("maxonline",10)==|| $is_superuser) {
    
$out.="<h2 style='width:20em;margin:15px auto 15px auto;font-weight:bold;'>`&<strong><acronym title='Land of the Green Dragon' lang='en'>LoGD</acronym> von Silvanur  betreten:</strong>`0</h2>\n";
    if (!empty (
$_GET['message'])) 
        
$out.="`b`\$".urldecode($_GET['message'])."`0`b`n";
    
$out.="<form action='login.php' method='POST'>"
    
.templatereplace("login",array("username"=>"`bName`b","password"=>"`bPasswort`b","button"=>"Betreten"))
    .
"</form>";
    
// Without this, I had one user constantly get 'badnav.php' :/  Everyone else worked, but he didn't
    
allownav ("login.php");
} else {
    
$out.="`^`bDer Server ist im Moment ausgelastet, die maximale Anzahl an Usern ist bereits online.`b`nBitte warte, bis wieder ein Platz frei ist.`b`0`n`n";
    if (!empty (
$_GET['message'])) 
        
$out.="`b`\$".urldecode($_GET['message'])."`0`b`n";
    
$out.=templatereplace("full")."";
}

//Skin-Wechsel, gesehen bei Version 0.9.8 +, coded von Eliwood
if ($handle = @opendir("templates")){
    
$skins = array();
    while (
false !== ($file = @readdir($handle))){
        if (
strpos($file,".htm")
                && 
strpos($file,"index.htm") === false) {
            
array_push($skins,$file);
        }
    }
    if (
count($skins)){
        
asort($skins);
        
$out.="<form action='index.php' method='POST'>
            `bWähle einen Skin`b`n`n
            <label for='template'>Skin:</label>
        <select name='template' id='template'>"
;
        while (list(
$key,$val)=each($skins)){
            
$out.="<option value='$val' ".(empty($_COOKIE['template']) && $val=="autumn.htm" || !empty ($_COOKIE['template']) && $_COOKIE['template']==$val?"selected":"").">".ucfirst(substr($val,0,stripos($val,".htm")))."</option>\n";
        }
        
$out.="</select>
            <input type='submit' class='button' value='Bestätigen'>
            </form>"
;
    }
}else{
    
$out.="`b`\$FEHLER!!!`b`&Kann den Ordner mit den Skins nicht finden. Bitte benachrichtige den Admin!!";
//Ende des Skinwechsler
 

//$out.="`n`&".getsetting("loginbanner","")."`0`n";
$_SESSION['message']="";

//serverzeit 
$newDate mktime(19,30,0,10,9,2007); 

// aktuelle Zeit im Unixformat erzeugen 
$actDate time(); 
// Differenz berechnen (in Sekunden) 
$diffDate = ($actDate-$newDate); 

// Anzahl Tage = Sekunden /24/60/60 
// floor() liefert nur den Anteil vor dem Komma 
$days floor($diffDate 24 60 60 ); 
// den verbleibenden Rest berechnen = Stunden 
$diffDate $diffDate - ($days*24*60*60); 
// den Stundenanteil herausrechnen 
$hours floor($diffDate 60 60); 
$diffDate = ($diffDate - ($hours*60*60)); 
// den Minutenanteil 
$minutes floor($diffDate/60); 
$diffDate $diffDate - ($minutes*60); 
// die verbleibenden Sekunden 
$seconds floor($diffDate); 

// und das ganze dann Anzeigen: 
$out.="`b`&Dieser Server ist schon: $days Tage, $hours Stunden, $minutes Minuten und $seconds Sekunden online`0`b"
//serverzeit

output ($out."</div>",true);
page_footer();
?>
Source von index.php

Weitere Dateien, von denen du den Quelltext sehen kannst:

?>