Archives des forums MMO/MMORPG > Dark Age of Camelot > DAoC - Général > Xml, besoin d'aide
Xml, besoin d'aide
Par Astellig GR le 31/7/2002 à 7:36:23 (#1879952)
J'ai parcouru pas mal de site de guilde est j'ai vu que certaine utilisé le Xml pour donné les infos d'un serveur (nbre de joueurs etc)
Quelqu'un serait t'il m'expliker concretement que faut il comme fichier quel serait la source etc :)
Voila merci
Par Abraham Lincoln le 31/7/2002 à 7:44:55 (#1879964)
Par Astellig GR le 31/7/2002 à 7:48:45 (#1879967)
Enfin je vais jeter un oeil :)
Par Abraham Lincoln le 31/7/2002 à 7:50:25 (#1879969)
Mais bon c'est deja ca
Par Astellig GR le 31/7/2002 à 7:52:01 (#1879971)
Par Lylendrill le 31/7/2002 à 8:38:55 (#1880057)
Par Astellig GR le 31/7/2002 à 8:43:32 (#1880066)
Par Okam le 31/7/2002 à 8:54:30 (#1880097)
avec un exemple : http://home.greycouncil.org/download.php?op=getit&lid=7
pour plus d'infos tu m'envoie un MP
Par Rochelle le 31/7/2002 à 8:54:45 (#1880098)
Re: Xml, besoin d'aide
Par bigben le 31/7/2002 à 10:37:18 (#1880508)
Provient du message de Astellig GR
Hello :)
J'ai parcouru pas mal de site de guilde est j'ai vu que certaine utilisé le Xml pour donné les infos d'un serveur (nbre de joueurs etc)
Quelqu'un serait t'il m'expliker concretement que faut il comme fichier quel serait la source etc :)
Voila merci
Quelle outils peux tu utiliser pour traiter le fichier XML ? (php/asp/xml - xsl)
Pour la source, ce sera les fichiers de GOA :
- toutes les infos (serveurs + forts)
http://www.camelot-europe.com/herald/servers.xml
- uniquement les infos serveur (up/down & nb joueurs)
http://www.camelot-europe.com/herald/nb_connected.xml
Si tu veux faire ca en PHP, vas voir sur le site de ma guilde (Spectre d'emeraude) et si ca te convient, je poste le code ce soir
Par Astellig GR le 31/7/2002 à 15:45:42 (#1882996)
Sinon merci a tous pour vos reponse je pense que ca m'aidera :)
Par Polmera Mygas le 31/7/2002 à 15:59:29 (#1883110)
j'ai fait des chroniques en php : http://membres.lycos.fr/tinaoviel/Chroniques.html
Le site www.commentcamarche.net offre de tres bonnes explications et cours sur le php et le xml, et d'ailleurs sur tous les domaines de l'informatique.
Finalement c pas si compliaue ;)
Par bigben le 1/8/2002 à 11:17:31 (#1888597)
donc, le voici :
code php a placer dans la page ou doit etre affiche l'etat des serveurs
",
"FRENCH"=>",
"ENGLISH"=>",
"GERMAN"=>",
"END"=>",
"LANGUAGE"=>",
"PLAYERS"=>array(
"FLAG"=>false,
"TOTAL"=>0,
),
"DATA"=>false,
"EN2FR"=>array(
"FRENCH"=>"Français",
"ENGLISH"=>"Anglais",
"GERMAN"=>"Allemand",
)
);
$xml_parser = xml_parser_create();
xml_set_element_handler($xml_parser, "startElement", "endElement");
xml_set_character_data_handler($xml_parser, "data");
$fichier = fopen("http://www.camelot-europe.com/herald/nb_connected.xml", "r");
$data = ";
while(!feof($fichier)) $data .= fgets($fichier, 1024);
if(!xml_parse($xml_parser, $data, feof($fichier))) die(sprintf("XML error: %s at line %d", xml_error_string(xml_get_error_code($xml_parser)), xml_get_current_line_number($xml_parser)));
xml_parser_free($xml_parser);
fclose($fichier);
echo $HTMLCode["START"];
echo $HTMLCode["FRENCH"];
echo $HTMLCode["ENGLISH"];
echo $HTMLCode["GERMAN"];
echo $HTMLCode["END"];
?>
<?
function startElement($parser, $name, $attrs) {
global $HTMLCode;
switch($name) {
case "SERVER_STATUS":
$HTMLCode["START"] .= "\n";
break;
case "SERVER":
$HTMLCode["LANGUAGE"] = strtoupper($attrs["TYPE"]);
$HTMLCode[$HTMLCode["LANGUAGE"]] .= "\n";
$HTMLCode[$HTMLCode["LANGUAGE"]] .= " " . $attrs["NAME"] . "...\n";
$HTMLCode[$HTMLCode["LANGUAGE"]] .= ";
break;
case "STATUS":
$HTMLCode[$HTMLCode["LANGUAGE"]] .= "Status:";
$HTMLCode["DATA"] = true;
break;
case "POPULATION":
$HTMLCode[$HTMLCode["LANGUAGE"]] .= "Joueurs:";
$HTMLCode["DATA"] = true;
$HTMLCode["PLAYERS"]["FLAG"] = true;
break;
}
}
function endElement($parser, $name) {
global $HTMLCode;
switch($name) {
case "SERVER_STATUS":
$HTMLCode["END"] .= " . $HTMLCode["PLAYERS"]["TOTAL"] . " joueurs\n";
$HTMLCode["END"] .= "\n";
break;
case "SERVER":
$HTMLCode[$HTMLCode["LANGUAGE"]] .= "\n";
break;
case "STATUS":
$HTMLCode[$HTMLCode["LANGUAGE"]] .= "\n";
$HTMLCode["DATA"] = false;
break;
case "POPULATION":
$HTMLCode[$HTMLCode["LANGUAGE"]] .= "\n";
$HTMLCode["DATA"] = false;
$HTMLCode["PLAYERS"]["FLAG"] = false;
break;
}
}
function data($parser, $data) {
global $HTMLCode;
if($HTMLCode["DATA"]) {
switch($data) {
case "Up":
$data = "Ouvert";
break;
case "Down":
$data = "Fermé";
break;
default:
if($HTMLCode["PLAYERS"]["FLAG"]) $HTMLCode["PLAYERS"]["TOTAL"] += $data;
break;
}
$HTMLCode[$HTMLCode["LANGUAGE"]] .= $data;
}
}
?>
styles associes (qui peuvent etre redefinis en fonction de la charte de ton site) :
tr.xmlserver {font: bold 8pt verdana, arial; color: green; background: #BBBBBB}
tr.xml {font: 8pt verdana, arial; color: black; background: #EEEEEE}
td.xml {border-top: solid 1px black; border-right: solid 2px black; border-bottom: solid 1px black; border-left: solid 1px black}
td.right {text-align: right}
a.xml {font: bold 8pt verdana, arial; color: black; text-decoration: none}
a.xml:hover {color: green}
td.separator {text-align: center; width: 10px}
td.bold {font: bold 8pt verdana, arial; color: black; background: #EEEEEE}
tr.xmltotal {font: bold 10pt verdana, arial; color: black; background: #BBBBBB}
td.xmltotal {text-align: center; border-top: solid 1px black; border-right: solid 2px black; border-bottom: solid 2px black; border-left: solid 1px black}
si qqun veut plus d'aide.... ====> MP :)
Par Fantome le 1/8/2002 à 11:40:38 (#1888735)
JOL Archives 1.0.1
@ JOL / JeuxOnLine