Sorgonas
Quest-Mob
- Mitglied seit
- 30.03.2010
- Beiträge
- 69
- Reaktionspunkte
- 0
Hallo an alle,
wie beschrieben bekomme ich nicht alles angezeigt. Bis vor kurzem habe ich auch nur 61 von 77 Member angezeigt bekommen, nun bekomme ich oben in der Gildeninfo die richtige Anzahl angezeigt, unten jedoch habe ich nur leere felder bei den 16 nachträglichen Daten.
Das was ich unter diesem code geschrieben habe,ist das was ich nachträglich abgeändert habe, um die richtige Anzahl zu bekommen.
Ich hoffe Ihr könnt mir da nun mit weiter helfen.
dies hier ist der code von Cronjob.php:
<?php
// Konfiguration
$sGuildName = 'Familia de Lux';
$sRealmName = 'Lothar';
$sGuildFields= 'members'; // Möglich sind: achievements, members
$iMaxEntries = 1; // Anzahl der maximalen Einträge pro Zeile
$sMemberFields = 'talents,professions,items';
$sCacheFile = 'cache.sth';
$iCacheTimeout = 1; // Cache-Timeout in Sekunden
$sAPIURL = 'http://eu.battle.net/api/wow/';
$aGuildData = array();
$sRawEncodedRealm = rawurlencode($sRealmName);
$sRawEncodedGuild = rawurlencode($sGuildName);
$sResponse = null;
if( !is_file($sCacheFile) || (time() - filemtime($sCacheFile)) > $iCacheTimeout || filesize($sCacheFile) == 0 ) {
// Auslesen der Gildendaten.
$sRequestURL = $sAPIURL . 'guild/'.$sRawEncodedRealm.'/'.$sRawEncodedGuild.'?locale=de_de&fields='.$sGuildFields;
$sResponse = @file_get_contents($sRequestURL, true);
if (strpos($http_response_header[0], '200')) {
$http_response_header = null;
$aRawData = json_decode($sResponse, true);
$aGuildData = $aRawData;
unset($aGuildData['members']);
foreach ($aRawData['members'] as $aMemberItem )
{
$sCharName = $aMemberItem['character']['name'];
$sCharResponse = @file_get_contents(
$sAPIURL . 'character/'.$sRawEncodedRealm.'/'.urlencode(html_entity_decode($sCharName, ENT_COMPAT, 'UTF-8')).'?locale=de_de&fields='.$sMemberFields
, true
);
// Prüfe Rückgabe
if (strpos($http_response_header[0], '200')) {
$aDecodeMember = json_decode($sCharResponse, true);
$aGuildData['members'][] = json_decode($sCharResponse, true);
}
}
//print_r(json_encode($aGuildData));
file_put_contents($sCacheFile, json_encode($aGuildData));
unset($aGuild, $decodeMember, $aRawData, $http_response_header, $sCharResponse, $sResponse);
}
}
?>
Ich habe die Seite mal komplett unten angefügt:
1. cronfrage.php (Datei zum auslesen der Gilden-Informationen)
2. konfig.php (Variablen zum anzeigen verschiedener Atribute)
3. mitglieder.php (Hauptseite der Mitgliederliste)
4. mitglieder.css (ist wohl klar was dies ist http://www.php.de/images/smilies/icon_wink.gif )
wie beschrieben bekomme ich nicht alles angezeigt. Bis vor kurzem habe ich auch nur 61 von 77 Member angezeigt bekommen, nun bekomme ich oben in der Gildeninfo die richtige Anzahl angezeigt, unten jedoch habe ich nur leere felder bei den 16 nachträglichen Daten.
Das was ich unter diesem code geschrieben habe,ist das was ich nachträglich abgeändert habe, um die richtige Anzahl zu bekommen.
Ich hoffe Ihr könnt mir da nun mit weiter helfen.
dies hier ist der code von Cronjob.php:
<?php
// Konfiguration
$sGuildName = 'Familia de Lux';
$sRealmName = 'Lothar';
$sGuildFields= 'members'; // Möglich sind: achievements, members
$iMaxEntries = 1; // Anzahl der maximalen Einträge pro Zeile
$sMemberFields = 'talents,professions,items';
$sCacheFile = 'cache.sth';
$iCacheTimeout = 1; // Cache-Timeout in Sekunden
$sAPIURL = 'http://eu.battle.net/api/wow/';
$aGuildData = array();
$sRawEncodedRealm = rawurlencode($sRealmName);
$sRawEncodedGuild = rawurlencode($sGuildName);
$sResponse = null;
if( !is_file($sCacheFile) || (time() - filemtime($sCacheFile)) > $iCacheTimeout || filesize($sCacheFile) == 0 ) {
// Auslesen der Gildendaten.
$sRequestURL = $sAPIURL . 'guild/'.$sRawEncodedRealm.'/'.$sRawEncodedGuild.'?locale=de_de&fields='.$sGuildFields;
$sResponse = @file_get_contents($sRequestURL, true);
if (strpos($http_response_header[0], '200')) {
$http_response_header = null;
$aRawData = json_decode($sResponse, true);
$aGuildData = $aRawData;
unset($aGuildData['members']);
foreach ($aRawData['members'] as $aMemberItem )
{
$sCharName = $aMemberItem['character']['name'];
$sCharResponse = @file_get_contents(
$sAPIURL . 'character/'.$sRawEncodedRealm.'/'.urlencode(html_entity_decode($sCharName, ENT_COMPAT, 'UTF-8')).'?locale=de_de&fields='.$sMemberFields
, true
);
// Prüfe Rückgabe
if (strpos($http_response_header[0], '200')) {
$aDecodeMember = json_decode($sCharResponse, true);
$aGuildData['members'][] = json_decode($sCharResponse, true);
}
}
//print_r(json_encode($aGuildData));
file_put_contents($sCacheFile, json_encode($aGuildData));
unset($aGuild, $decodeMember, $aRawData, $http_response_header, $sCharResponse, $sResponse);
}
}
?>
Code:
// Prüfe Rückgabe
if (strpos($http_response_header[0], '200')) {
$aDecodeMember = json_decode($sCharResponse, true);
$aGuildData['members'][] = json_decode($sCharResponse, true);
}
else {$aDecodeMember = json_decode($sCharResponse, true);
$aGuildData['members'][] = json_decode($sCharResponse, true);
}
}
1. cronfrage.php (Datei zum auslesen der Gilden-Informationen)
2. konfig.php (Variablen zum anzeigen verschiedener Atribute)
3. mitglieder.php (Hauptseite der Mitgliederliste)
4. mitglieder.css (ist wohl klar was dies ist http://www.php.de/images/smilies/icon_wink.gif )