Ruhrcacher hat geschrieben:
Nun hätte ich auch noch einen Beitrag zum Wunschkonzert
Ich reibe an der Lampe es Programmiergeistes und wünsche mir ein von geolog erzeugtes Statistikbanner mit meiner Gesamtstatistik.
Das Banner von Groundspeak zeigt nur die auf gc.com geloggten Funde, das von Opencaching nur die auf OC.de geloggten.
Einzig geolog/ocprop ist in der Lage eine Gesamtstatistik zu führen, die auch alle OC-Only Caches beinhaltet.
Lässt sich aus dieser Datenbasis ein eigenes Statistikbanner auf dem eigenen Server generieren?
Da geolog für jeden gefundenen Cache jeweils einen Ordner anlegt, kann man die Anzahl dieser Ordner zählen und ausgeben. Wer PHP mit GDlib auf seinem Webserver hat, kann dann eine eigene Statistikgrafik generieren.
ich hab mir sowas selbst gebastelt, wie das aussieht sieht man in meiner Signatur und der Quelltext der sig.php sieht in etwa so aus:
Code:
<?PHP
//Pfad zu Fonts (TTF)
$fpath = realpath('fonts/verdana.ttf');
$fpath_bold = realpath('fonts/verdana_bold.ttf');
//Pfad zur Hintergrundgrafik
$image = "sig.png";
//Neues Bild auf Basis der Hintergrundgrafik erstellen
$im = imagecreatefrompng($image);
//Textfarben definieren
$orange = ImageColorAllocate ($im, 251, 173, 0);
$yellow = ImageColorAllocate ($im, 255, 239, 39);
function count_file($dir)
{
// pruefen ob Verzeichnis $dir existiert
if(is_dir($dir))
{
$afile[directory]=0;
$afile[file]=0;
chdir($dir);
$handle=opendir(".");
while($file=readdir($handle))
{
// zaehle Unterverzeichnisse
if(is_dir($file) && $file!="." && $file!="..")
{
$afile[directory]++;
$afile[directory]+=$y[directory];
}
}
// gehe eine Ebene zurueck im Verzeichnisbaum
chdir("../");
closedir($handle);
}
return $afile;
}
// Funktionsaufruf fuer Funde
$dir="../gcdir/found";
$atest=count_file($dir); if ($atest[directory]=="") $atest[directory]="0";
$finds=$atest[directory];
// Funktionsaufruf fuer Versteckte
$dir="hidden";
$atest=count_file($dir); if ($atest[directory]=="") $atest[directory]="0";
$hidden=$atest[directory];
//Text der angezeigt werden soll
ImageTTFText ($im, 8, 0, 29, 10, $yellow, $fpath_bold, "Geocaching Statistik");
ImageTTFText ($im, 8, 0, 29, 22, $yellow, $fpath_bold, "von MaxED9");
ImageTTFText ($im, 8, 0, 29, 36, $orange, $fpath_bold, "gefunden: $finds");
ImageTTFText ($im, 8, 0, 29, 48, $orange, $fpath_bold, "versteckt: $hidden");
ImageTTFText ($im, 6, 0, 120, 57, $yellow, $fpath_bold, "www.max-fun.de");
//Neues Bild ausgeben
header("Content-Type: image/png");
Imagepng($im,'',100); // oder ab PHP5 nur Imagepng($im);
ImageDestroy ($im);
?>
die dazu passende Verzeichnisstrukur
Code:
/
|-[gcdir]
| |-[found]
| |-[hidden]
| |- ...
|
|-[signatur]
| |-[fonts]
| | |-verdana.ttf
| | |-verdana_bold.ttf
| |-sig.php
| |-sig.png
das Ganze kann man dann noch mit mod-rewrite so rumbiegen, dass man auf ein jpg/png verlinkt und dann o.g. Script die entsprechende Grafik ausgibt