| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| o_0 Registriert seit: Apr 2005 Ort: zuhause
Beiträge: 79
| highscorelist mit xml und php - finde den Fehler nicht
Hi all! Seit kurzem arbeite ich an einem Highscorelist-Script für mein Flashgame, das zuerst die XML-Datei ausliest, in ein Objekt schreibt, und von diesem Objekt wieder eine neue, sortierte, XML erstellt, mit dem neuen Highscore. Diese XML wird dann an ein PHP Script weitergegeben das dann die neue XML-Datei schreibt. ActionScript: PHP-Code: PHP-Code: ich hab wirklich keine Ahnung wo der Fehler liegt, vielleicht sogar in der aimtrain.php, ich bin ja schließlich Neuling in PHP. Was genau passt nicht in dem Script?
__________________ Ich war traurig weil ich keine Schuhe hatte, bis ich einen sah, der keine Füße hatte Geändert von DoTheSinWave (20-12-2005 um 19:32 Uhr) |
| | |
| | #2 (permalink) |
| Freak Registriert seit: Dec 2005
Beiträge: 29
|
Sorry, kann deinen Fehler nicht erkennen... Habe aber zufällig gestern etwas Ähnliches gebastelt: Admin-Menü für eine xmlDatei. Vielleicht hilft dir mein Code? CODE: Code: stop();
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Methode, um ein XML in verschachtelte Arrays umzuwandeln
XMLNode.prototype.toArray = function(arr) {
// Anzahl der Unterknoten
var anzahlKnoten = this.childNodes.length;
for (var i = 0; i<anzahlKnoten; i++) {
if (this.childNodes[i].nodeType == 1) {
// Elementknoten (Entspricht nodeType 1)
// neuer Knoten -> neues Array
arr[i] = [];
// Attribute prüfen
for (var j in this.childNodes[i].attributes) {
arr[i][j] = this.childNodes[i].attributes[j];
}
// Sind Unterknoten vorhanden?
if (this.childNodes[i].hasChildNodes()) {
// Aufruf der Methode (rekursiv)
this.childNodes[i].toArray(arr[i]);
}
} else {
// Textknoten (Entspricht Nodetype 3)
arr[i] = this.childNodes[i].nodeValue;
}
}
return arr;
};
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//
// XML einlesen
//
function einlesen() {
xxx = new XML();
xxx.ignoreWhite = true;
xxx.load("port.xml");
// wenn geladen...
xxx.onLoad = function(status) {
if (status) {
// XML-Struktur auslesen
_global.port_arr = this.firstChild.toArray([]);
hauptNavi();
ersterEintrag();
}
};
}
//
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//
// Hauptnavi erstellen
//
function hauptNavi() {
var startx = 501;
var starty = 50;
var k = -1;
var l = 0;
var haupt = this.createEmptyMovieClip("hauptnavi_mc", 1);
for (var i = 1; i<=anzahl-3; i++) {
if (i<10) {
n = "thumb0"+i;
} else {
n = "thumb"+i;
}
tb = haupt.attachMovie("thumb", n, i);
tb.id = i;
if (i<10) {
tb.ziffern.text = "0"+i;
} else {
tb.ziffern.text = i;
}
tb._x = startx+tb._width*(k+1);
tb._y = starty+tb._height*(l);
tb.onRollOver = function() {
this.thumb_ani.gotoAndPlay(2);
};
tb.onRollOut = function() {
this.thumb_ani.gotoAndPlay(6);
};
tb.onRelease = function() {
if (_global.id != this.id) {
_root.hauptnavi_mc["thumb"+actpic].thumb_ani.colorTo("0x333333", 2);
//trace(_root.holder["thumb"+actpic]);
//this.thumb_ani.colorTo("0xC07014", .5);
this.thumb_ani.colorTo("0xffffff", .5);
if (this.id<=10) {
holder.loadMovie("pics/0"+(this.id)+".jpg");
} else {
holder.loadMovie("pics/"+(this.id)+".jpg");
}
_global.id = this.id;
_root.head.text = "Nr. "+(this.id);
_root.der_text.htmlText = port_arr[this.id-1][0];
}
actpic = this.ziffern.text;
};
k++;
if (k>4) {
k = -1;
l++;
}
}
}
//
//
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//
senden_mc.onRelease = function() {
if (_root.der_text.text != "" && _root.der_text.text != "\r" && _root.der_text.text != port_arr[id-1][0]) {
port_arr[id-1] = [];
port_arr[id-1][0] = _root.der_text.text;
//
//Formatierung der XML-Datei
// Einleitung
xml_formatierung = "<?xml version=1.0 encoding=utf-8 ?>";
xml_formatierung += "\n";
xml_formatierung += "<content>";
//ab hier die Inhalte
for (var i = 0; i<port_arr.length; i++) {
xml_formatierung += "\n";
xml_formatierung += " <item id='"+i+"'><![CDATA["+port_arr[i][0]+"]]></item>";
}
//hier der Abschluss
xml_formatierung += "\n";
xml_formatierung += "</content>";
// Ende der XML-Formatierung
// neues LoadVars-Objekt zum Übertragen der Daten an die PHP-Datei "parse.php"
php_parse = new LoadVars();
// der Name der XML-Datei
var dateiname = "port";
// Die Formatierungsvariable wird dem LoadVars-Objekt übertragen
php_parse.uebergabe = xml_formatierung;
// diese Variable bezeichnet den relativen Pfad zum Ordner, in dem die XML geladen wird. Wird sie wie jetzt leer gelassen, wird die XML im selben Verzeichnis wie die PHP-Datei erzeugt.
php_parse.pfadname = "";
// Hier wird nur der Name der zu generierenden XML-Datei übermittelt.
php_parse.seitenname = dateiname+".xml";
// zu guter Letzt werden die Daten an die PHP_Datei gesendet
php_parse.onLoad = function() {
_root.head.text = "Eingelesen!";
//einlesen();
};
php_parse.sendAndLoad("parse.php", php_parse, "POST");
}
};
// Start:
function ersterEintrag() {
_global.id = 1;
_root.head.text = "Nr. "+1;
_root.der_text.htmlText = port_arr[0][0];
holder.loadMovie("pics/01.jpg");
}
einlesen(); Code: <?php
if ($uebergabe){
$uebergabe=stripslashes($uebergabe);
// die XML-Datei wird geöffnet/bzw. erstellt…
$fp = fopen($pfadname . $seitenname,"w");
// mit Inhalten gefüllt …
fputs ($fp, $uebergabe);
// und zu guter Letzt wieder geschlossen
fclose($fp);
}
echo "das wars";
?> Silicone |
| | |
| | #3 (permalink) |
| The Man Who Wasn't There Registriert seit: Jul 2003 Ort: BÄRLIN
Beiträge: 1.156
|
hi, weiß jetzt nicht genau obs daran liegt aber die parameterdefinition in deinen funktionsdefinitionen heißen wie der zur laufzeit eingetragene variablenname... und zwar: "list" gruß mike
__________________ Dot-Realities Mike Broders Berlin ICQ:105925103 Dot-Realities v4.0 under construction! |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |