XML Datei in Flash einlesen und wieder speichern

Äh.

hast Du Dir die Dokumentation zum LoadVars-Objekt einmal durchgelesen?

Wenn Du ein LoadVars-Objekt hast, mit dem Namen "loadV" - und Du hast in diesem LoadVars-Objekt eine Variable namens "XML" (obwohl ich Dir zu diesem Bezeichner nicht raten würde) - und Du schickst das ganze an PHP, dann musst Du dort nicht
PHP:
$_POST["loadV"]
auslesen und auch nicht:
PHP:
$_POST["data"]
, sondern:
PHP:
$_POST["XML"]
;)

Gruß
.
 
Hallo,

hier nochmal mein aktueller Code, ich habe es nochmal so versucht wie du es mir ganz am Anfang gepostet hattest:

Code:
function saveXML(adressListe:XML) {
	if (adressListe.firstChild.hasChildNodes()) {
		for (var aNode:XMLNode = adressListe.firstChild.firstChild; aNode != null; aNode=aNode.nextSibling) {
			 aNode.firstChild.nodeValue = _root[aNode.nodeName].text;
			}//end for
		}//end if
	var lv = new LoadVars();
	lv.data = adressListe.toString();
    lv.onLoad = function(success) {
        trace("Übertragung: " + success);
		}//end onLoad
	lv.sendAndLoad("save.php", lv, "POST");
}//end saveXML


Was mich wundert ist, dass Du das "lv" schickst, aber das "data" empfängst- weil wenn ich mir mein data per trace ausgeben lasse, steht da es wäre undefined?!
Ich hab jetzt schon aus Frust alle möglichen Kombinationen mit den Variablen im Flash und im PHP ausprobiert, aber keine funktioniert...
In lv.data stehen ja die Daten drin, die ich haben will, nämlich meine XML als String. Aber wie bekomm ich die jetzt in das PHP und dann in meine XML Datei wieder rein?

Gruss
 
Wenn in lv.data die Daten stehen, und Du das Objekt lv an PHP schickst, sind Deine Daten dort in
PHP:
$_POST["data"]

Ich denke, es wäre am sinnvollsten, Du würdest die Dateien einmal posten und ich korrigier es Dir. ;)

Gruß
.
 
Ok, vielen Dank sowieso für die viele Mühe die du dir gibst.
Leider ist meine *.fla trotz zippen zu gross, aber ich hab den Code mal in eine Textdatei gepackt. Im prinzip sind auf der Bühne eben die 4 Textfelder die erste gefüllt und dann wieder ausgelesen. Die Textfelder heissen wie die Tags in der XML. Das Einlesen klappte ja ohne Probleme.
Hoffe du kannst was damit anfangen!

Danke und Gruss
 

Anhänge

  • AS.txt
    1,2 KB · Aufrufe: 47
  • php_xml.zip
    624 Bytes · Aufrufe: 24
Hi,

in diesem Fall muss Deine PHP-Datei so ausschauen:
PHP:
if (isset($_POST["adressListe"])) {
   	if ($fhd = fopen("adresse.xml", "w")) {
       	fwrite($fhd, $_POST["adressListe"]);
		fclose($fhd);
   	}//end if
} //end if

Gruß
.
 
Hallo!

Wow das ging aber fix!

Ok gut, diese Variante hatte ich nach meinem Verständnis auch mal, leider passiert einfach nichts mit meiner XML Datei, dh anscheinend wird sie weder touchiert noch überschrieben noch was reingeschrieben. Und eigentlich müsste sie das ja tun...

Gruss
 
Ok,

Debugging ist nicht leicht, wenn ich die Originaldatei nicht vorliegen habe.

Mal schauen:

was gibt
PHP:
trace(lv.adressListe);
in Flash direkt vor dem Versenden aus?

Änder mal das sendAndLoad (nur zu Testzwecken) in ein:
PHP:
lv.send("save.php", "POST");
und lass Dir $_POST["adressListe"] in PHP ausgeben:
PHP:
echo $_POST["adressListe"];
Was für eine Ausgabe bekommst Du?

Gruß
.
 
Ja sorry wegen dem File, aber es ist zu gross - obwohl nicht viel drin ist :)

1. Gibt die XML korrekt aus?
2. Er will die save.php öffnen bzw. speichern, ist auch die richtige
3. Wann gibt der das Echo aus?
 
Ok hier das Echo:

Warning: fopen("adresse.xml", "w") - Permission denied in meinPfad/save.php on line 2
 

Neue Beiträge

Zurück