Code Php relié à un fichier xml
Bonsoir,
J'ai créé des personnages, j'ai relié les informations à un fichier xml.
Mon code : (php)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
| <?php
date_default_timezone_set('Europe/Paris');
$date=["d M Y, G : i",filemtime("gps.txt")];
$perso=$_POST["perso"];
$lieu=$_POST["lieu"];
$latitude=$_POST["latitude"];
$longitude=$_POST["longitude"];
$date=$_POST["date"];
$monFichier = fopen("gps.txt", "w");
fwrite($monFichier,$perso."\n");
fwrite($monFichier,$lieu."\n");
fwrite($monFichier,$latitude."\n");
fwrite($monFichier,$longitude. "\n");
fwrite($monFichier,$date."\n");
fclose($monFichier);
$monFichier = fopen("./test.xml","a+");
$monFichier = new DOMDocument('1.0','utf-8');
$monFichier->formatOutput = true;
$root = $monFichier->createElement('utilisateurs');
$root = $monFichier->appendChild($root);
$title1 = $monFichier->createElement('lieu');
$title1 = $root->appendChild($title1);
$title1->appendChild($monFichier->createTextNode($lieu));
$title2 = $monFichier->createElement('longitude');
$title2 = $root->appendChild($title2);
$title2->appendChild($monFichier->createTextNode($longitude));
$title3 = $monFichier->createElement('latitude');
$title3 = $root->appendChild($title3);
$title3->appendChild($monFichier->createTextNode($latitude));
$title4 = $monFichier->createElement('perso');
$title4 = $root->appendChild($title4);
$title4->appendChild($monFichier->createTextNode($perso));
$title5 = $monFichier->createElement('date');
$title5 = $root->appendChild($title5);
$title5->appendChild($monFichier->createTextNode($date));
$monFichier->save("test.xml");
date_default_timezone_set('Europe/Paris');
echo "<p>Ce qui a été envoyé :</p> <br/>
<br/>
<b>".$perso."</b> est <b>".$lieu."</b>, depuis le <b>". date("d M Y, G : i",filemtime("gps.txt"))."</b>
<br/>GPS : ".$latitude." | ".$longitude;
?> |
Ce que j'obtiens : (xml)
Code:
1 2 3 4 5 6 7 8
| <?xml version="1.0" encoding="utf-8"?>
<utilisateurs>
<lieu>à la maison</lieu>
<longitude>4.3877762</longitude>
<latitude>45.423759499999996</latitude>
<perso>Ron</perso>
<date></date>
</utilisateurs> |
Ce que j'aimerais :
Code:
1 2 3 4 5 6 7 8 9 10
| <?xml version="1.0" encoding="utf-8"?>
<utilisateurs>
<identite id="1">
<lieu>à la maison</lieu>
<longitude>4.3877762</longitude>
<latitude>45.423759499999996</latitude>
<perso>Ron</perso>
<date></date>
</identite>
</utilisateurs> |
J'aimerais mettre une identité pour chaque personnage, et que le lieu, longitude, latitude, date s'actualise à chaque fois, mais que l'ensemble des personnages soient présent. Là je n'ai seulement que le dernière personnage, pourtant j'ai bien mis sauvegardé donc je ne comprends pas.
Je souhaite faire cela pour réaliser ce code par la suite :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| <?php
$latitude=$_POST["latitude"];
$longitude=$_POST["longitude"];
$perso= $_POST["id"];
echo "Coordonnées GPS de l'identifiant : ".$perso." ".$latitude." | ".$longitude."<br />";//le petit affichage
$test_xml = simplexml_load_file("test.xml");
$date=date("d M Y, G : i");
echo $date."";
foreach ($test_xml->perso as $perso) {
if ($identite['id']==$id) {
$identite->latitude=$latitude;
$identite->longitude=$longitude;
$identite->date=$date;
}
}
$test_xml->asXML("test.xml");
?> |
Si vous avez une piste.. merci d'avance pour l'aide apportée :)