LoGD Standardrelease steht hier zum Download zur Verfügung!

Zeige Source: /waisen_statistik.php

Hier klicken für den Source, ODER
Weitere Dateien, von denen du den Quelltext sehen kannst:
(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.)

Source von: /waisen_statistik.php

<?php
/*
* Version:    20.09.2008
* Author:    Linus
* Email:    webmaster@alvion-logd.de
* Zweck:    Admintool für das Kindermod
*
*/

require_once("common.php");


function 
analyse(){
    
$accts=array();
    
$sql="SELECT `acctid` FROM `accounts`";
    
$result=db_query($sql);
    while (
$row db_fetch_assoc($result)) {
        
$accts[$i]=(int)$row['acctid'];
        
$i++;
    }
    
$sql="SELECT `mama`, `papa` FROM `kinder`";
    
$result=db_query($sql);
    while (
$row db_fetch_assoc($result)) {
        if(
in_array((int)$row['mama'],$accts) && in_array((int)$row['papa'],$accts)){
            
$gut++;
        }elseif (
in_array((int)$row['mama'],$accts)){
            if((int)
$row['papa']>0$fehler++;
            
$fehlp++;
        }elseif (
in_array((int)$row['papa'],$accts)){
            if((int)
$row['mama']>0$fehler++;
            
$fehlm++;
        }else{
            if((int)
$row['mama']>|| (int)$row['papa']>0$fehler++;
            
$fehl++;
        }
        
$j++;
    }

    return array(
$j$gut$fehl$fehlp$fehlm$fehler );
}

page_header("Waise oder nicht?");
$session[user][ort]='Administration';

switch(
$_GET['op']){
    case 
"clean":
        
$accts=array();
        
$sql="SELECT `acctid` FROM `accounts`";
        
$result=db_query($sql);
        while (
$row db_fetch_assoc($result)) {
            
$accts[$i]=(int)$row['acctid'];
            
$i++;
        }

        
$sql="SELECT `id`, `mama`, `papa` FROM `kinder`";
        
$result=db_query($sql);
        while (
$row db_fetch_assoc($result)) {
            if(
in_array((int)$row['mama'],$accts) && in_array((int)$row['papa'],$accts)){
                
$gut++;
            }elseif (
in_array((int)$row['mama'],$accts)){
                if((int)
$row['papa']>0){
                    
$fehler++;
                    
$fehlp++;
                    
db_query("UPDATE `kinder` SET `papa`=0 where `id`=".$row['id'].";");
                }
            }elseif (
in_array((int)$row['papa'],$accts)){
                if((int)
$row['mama']>0){
                    
$fehler++;
                    
$fehlm++;
                    
db_query("UPDATE `kinder` SET `mama`=0 where `id`=".$row['id'].";");
                }
            }else{
                if((int)
$row['mama']>|| (int)$row['papa']>0){
                    
$fehler++;
                    
$fehl++;
                    
db_query("UPDATE `kinder` SET `mama`=0, `papa`=0 where `id`=".$row['id'].";");
                }
            }
            
$j++;
        }

        
output("".$fehler." Fehler wurden korrigiert, bei $fehl Vollwaisen, $fehlm Kindern ohne Mutter und $fehlp Kindern ohne Vater!`n");
        
addnav('Zurück','waisen_statistik.php');
    break;

    default:
        list(
$j$gut$fehl$fehlp$fehlm$fehler)=analyse();
        if(
$fehler>0addnav('Aufräumen','waisen_statistik.php?op=clean');

        
output("`b`cDie Kinderstatistik`c`b`n`nAnzahl Kinder gesamt: ".$j."`nKinder mit zwei Eltern: ".$gut."`nHalbwaisen ohne Mutter: ".$fehlm."`nHalbwaisen ohne Vater: ".$fehlp."`nVollwaisen:".$fehl."`n`nFehler in DB (IDs von gelöschten Spielern): ".$fehler."`n");
    break;
}

addnav("G?Zurück zur Administration","superuser.php");

output("`n<div align='right'>2008 by Linus for alvion-logd.de/logd</div>",true);
checkday();
page_footer();
?>