Clan Daten erfassen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
clan
code
datum
ergebnis
file
gewonnene matches
http
image
laden
minute
mitglied
spielzeit
start
stunden
teil
tod
url
verlorene matches
verstehen
welt
-
Hallo members, :D
ich möchte die Clan daten(http://clan.z8games.com/clanstat_cf.aspx?guildid=42618) gerne lesen und auf die Homepage bringen. Doch ich weiß garnicht wie ich es machen soll.
Wenn es nicht geht dann gibt mir aber Vorshläge wie ich torzdem die Daten bekomme.
Hoffe ihr Hilft mir.
MfG OpenSystem -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Sicherlich geht das auch schöner, aber für den Anfang reicht das:
<? function expstr($content, $start, $end) { if ($content && $start && $end) { $r = explode($start, $content); if (isset($r[1])) { $r = explode($end, $r[1]); return $r[0]; } return ''; } } $file = file_get_contents("http://clan.z8games.com/clanstat_cf.aspx?guildid=42618"); // Clanlogo $clanlogo = expstr($file, '<img id="ctl00_Main_img_clanmark" src="', '"'); // Clanname $clanname = expstr($file, '<span id="ctl00_Main_lbl_clanname">', '</span>'); // Clanrang $rank = expstr($file, '<span id="ctl00_Main_lbl_rank">', '</span>'); // Clanleader $leader = expstr($file, '<span id="ctl00_Main_lbl_clanleader">', '</span>'); // Clan-Mitglieder $members = expstr($file, '<span id="ctl00_Main_lbl_members">', '</span>'); // Clan Punkte $pts = expstr($file, '<span id="ctl00_Main_lbl_points">', '</span>'); // Erstelldatum $cdate = expstr($file, '<span id="ctl00_Main_lbl_createddate">', '</span>'); // Letztes Clanmatch $lclanmatch = expstr($file, '<span id="ctl00_Main_lbl_text_last_match">', '</span>'); // Spielzeit $playtime = expstr($file, '<span id="ctl00_Main_lbl_minutesplayed">', '</span>'); // Gewonnene Matches $mwon = expstr($file, '<span id="ctl00_Main_lbl_win">', '</span>'); // Verlorene Matches $mlost = expstr($file, '<span id="ctl00_Main_lbl_lose">', '</span>'); // Kills insgesamt $kills = expstr($file, '<span id="ctl00_Main_lbl_enemykill">', '</span>'); // Tode insgesamt $deaths = expstr($file, '<span id="ctl00_Main_lbl_death">', '</span>'); // Clan Beschreibung $intro = expstr($file, '<span id="ctl00_Main_lbl_clan_intro">', '</span>'); ?> <html> <head> <title>Claninfo</title> </head> <body> <img src="http://clan.z8games.com/<?=$clanlogo?>" alt="<?=$clanname?>" title="<?=$clanname?>"> <br /><br /> <table cellpadding="3" cellspacing="3"> <tr> <td>Name des Clans:</td><td><?=$clanname?></td> </tr> <tr> <td>Beschreibung:</td><td><?=$intro?></td> </tr> <tr> <td>Mitglieder:</td><td><?=number_format($members,0,'','.');?></td> </tr> <tr> <td>Clanleader:</td><td><?=$leader?></td> </tr> <tr> <td>Rang:</td><td><?=number_format($rank,0,'','.');?></td> </tr> <tr> <td>Punkte:</td><td><?=number_format($pts,0,'','.');?></td> </tr> <tr> <td>Erstelldatum:</td><td><?=$cdate?></td> </tr> <tr> <td>Spielzeit:</td><td><?=floor($playtime/60/60)." Stunden und ".($playtime%60)." Minuten"?></td> </tr> <tr> <td>Letztes Match:</td><td><?=$lclanmatch?></td> </tr> <tr> <td>Gewonnene Matches:</td><td><?=number_format($mwon,0,'','.');?></td> </tr> <tr> <td>Verlorene Matches:</td><td><?=number_format($mlost,0,'','.');?></td> </tr> <tr> <td>Kills:</td><td><?=number_format($kills,0,'','.');?></td> </tr> <tr> <td>Tode:</td><td><?=number_format($deaths,0,'','.');?></td> </tr> </table> </body> </html>
Ist nur ein grobes Beispiel. Testen konnte ich das auf die Schnelle nicht, sollte aber gehen.
Was mich etwas irritiert ist die Spielzeit. Auf der Seite wird diese angeblich in Minuten angezeigt, jedoch halte ich 814295 Minuten bzw. 13571 Stunden für etwas viel... Deswegen bin ich jetzt einfach mal vorsichtshalber davon ausgegangen, dass es sich bei der Angabe eher um Sekunden handelt, was auch ein wesentlich realistischeres Ergebnis liefert.
Des Weiteren habe ich dir die Tausenderstellen mal vorformatiert d.h. aus 835049 wird 835.049, was die Lesbarkeit wohl erhöhen wird.
Da die Verbindung zwischen Z8Games und Lima nicht die schnellste ist, würde ich dir empfehlen, die Daten nicht bei jedem neu zu laden, sondern das Ergebnis zu catchen und nur alle paar Stunden oder ein Mal täglich zu aktualisieren. Dadurch erhält der Besucher zwar nicht mehr die genaue und derzeit aktuelle Statistik, dafür werden diese aber sehr schnell geladen.
Aber das ist deine Entscheidung ;)
PS:
Wenn es nicht geht dann gibt mir aber Vorshläge wie ich torzdem die Daten bekomme.
Wenn es nicht geht, geht es nicht... ;)
Beitrag zuletzt geändert: 24.5.2010 14:38:05 von fabo -
Wau das ist GANAU was ich wollte... wenn ich jetzt Karma hätte hätte ich dir einen geben. Auf jedem Fall
Jetzt kann ich das umändern und erweitern, du bist spitze :D
Nur nun versteh ich den Code nicht ganz :S aber werde ich spähter mal genauer wissen THX
MfG OpenSystem -
Nun, wenn dir das so reicht, freut es mich, dir geholfen zu haben.
Über eine Art Cache würde ich dennoch nachdenken, auch wenn ich damit jetzt heraufbeschwöre, dass ich gefragt werde, wie das funktioniert =)
Zur Erklärung... Der Code ist relativ einfach. Ich "schneide" (Siehe explode()) sozusagen die Werte zwischen X und Y aus. Mal ein Beispiel:
$content = "<b>Hallo Welt</b>";
Mit meinem Code sage ich, dass $content genau diesen Teil beinhaltet. Mit meiner kleinen Funktion schneide ich nun den Teil raus, den ich haben möchte:
expstr($file, '<b>', '</b>');
Was übrig bleibt ist:
Hallo Welt
Denn mehr will ich ja nicht haben ;) Um das Ganze besser zu verstehen, solltest du dir mal den Quelltext der Seite http://clan.z8games.com/clanstat_cf.aspx?guildid=42618 ansehen und dann mit dem Script vergleichen. Dann wirst du den Sinn verstehen.
Beitrag zuletzt geändert: 24.5.2010 19:46:55 von fabo -
Ja das wollte ich morgen programmieren. Dann wird das auf Dattenbank(MySQL) abgespeichert und der nächste Benützer bekommt die datten von MySQL. Der eingelogte Benützer Admin kriegt dan ein bottom "Laden". Ist nicht schwer zu machen auser das Foto.
Nun die frage wie kann ich das Image auf die Homepage bringen? FTP geht nicht aber wie sonst?
[EDIT]
Um nicht zu spamen. jetzt hab ich es kappiert
und
Ja das Clanlogo
MfG OpenSystem
Beitrag zuletzt geändert: 24.5.2010 19:50:17 von opensystem -
1. Ich habe meinen obigen Beitrag noch einmal editiert ;)
2. Welches "Image"? Meinst du das Clanlogo? -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage