Ich habe von nem Ambieter ne XML bekommen bzw ne link wo man die abrufen kann.Aber die ausgabe soll 15min gecacht werden. Ich habe das nun so gemacht erst das er die daten aus der xml datei speichert und dann mit smarty ausgibt. Smarty hat ja die funktion cachen. Die Seite wird gecacht, nur wird trozdem dauernt die abfrage durchgeführt im script selber.
Also kleine Beschreibung was das ganze eigentlich soll. Ich bin dabei ne Memberliste zu schreiben für eine gilde im mmorpg Ragnarok vlt ist das einiogen ein begrif. Der Spiele Betreiber bietet für fan sites usw eine xml an wo man die lvl job usw anschauen kann. Das ganze hat den vorteil man muss seine eigne db ned mehr selber aktualisiern. Nur darf halt die abfrage alle 15min erfolgen.
Das script so aus
Also kleine Beschreibung was das ganze eigentlich soll. Ich bin dabei ne Memberliste zu schreiben für eine gilde im mmorpg Ragnarok vlt ist das einiogen ein begrif. Der Spiele Betreiber bietet für fan sites usw eine xml an wo man die lvl job usw anschauen kann. Das ganze hat den vorteil man muss seine eigne db ned mehr selber aktualisiern. Nur darf halt die abfrage alle 15min erfolgen.
Das script so aus
PHP-Code:
$smarty->cache_dir = 'cache_dir/';
$smarty->caching = true;
$smarty->cache_lifetime = 900;
$modul = $_REQUEST['modul'];
$query = "SELECT * FROM $db_member where kat='$row1[kat]' order by id";
$ergebn2 = mysql_query($query);
while ($row = mysql_fetch_array($ergebn2))
{
$dokument = domxml_open_file("http://www.euro-ro.net/vcxml/chaos/$row[nick].xml");
$meine_elemente = $dokument->get_elements_by_tagname("name");
foreach ($meine_elemente as $knoten)
{
$nick1= $knoten->get_content();
}
$meine_elemente3 = $dokument->get_elements_by_tagname("baselevel");
foreach ($meine_elemente3 as $knoten)
{
$level= $knoten->get_content();
}
$meine_elemente4 = $dokument->get_elements_by_tagname("job");
foreach ($meine_elemente4 as $knoten)
{
$job= $knoten->get_content();
}
$meine_elemente2 = $dokument->get_elements_by_tagname("gender");
foreach ($meine_elemente2 as $knoten)
{
$gender= $knoten->get_content();
}
if($modul == member)
{
mysql_query("UPDATE $db_member SET lvl = '$level',
job = '$job', gender = '$gender' WHERE id = '$row[id]'");
}
$member= $row;
$smarty->append('member', $member);
}
}
Kommentar