ERLEDIGT
NEIN
NEIN
ANTWORTEN
43
43
ZUGRIFFE
2607
2607
EMPFEHLEN
-
...genau das ist meine Frage und ich hoffe innigest auf eine EINFACHE Antwort!
Am Server liegen also meine XMLs und ich möchte ein Interface bauen (oder finden), mit dem man die Texte da drinnen befüllen kann. Also letzlich über den Browser. Geht das überhaupt ohne abgeschlossenes (geschweige denn angefangenes) Mathe-Studium?
-
Ja, grade eben noch.Geht das überhaupt ohne abgeschlossenes (geschweige denn angefangenes) Mathe-Studium?

Du willst also eine Art Mini-CMS, um Deine XML-Dateien onlinezu bearbeiten? Das geht dann einfach, wenn Du im Flash-Interface direkt den Quelltext dieser Dateien bearbeiten willst (Dokument einlesen, editieren, an PHP-Script schicken und speichern), und wird umso komplexer, je abstrakter Du editieren willst (im Extremfall ein WYSIWYG-Editor) und je komplexer die XML-Dateien dabei aufgebaut sind.
Geht es darum, z.B. Einträge eines Newsscriptes zu editieren, sollte das eigentlich kein Problem sein.
Bitte erkläre noch einmal genauer, was dieses Interface leisten muss - dann können wir Dir sicher weiterhelfen.
Gruß
.
-
Das freut mich aber!
Also, in meinen XML-Dokumenten steht zum Beispiel folgendes:Dieses und ähnliche Dokumente liegen also am Server rum. Ich möchte nun, wie Du aus meinem Gemurmel ganz richtig geschlossen hast, dass der Betreiber der Site seine Site im Browser aufrufen kann und - über einen passwortgeschützten Zugang - an ein Interface gelangt, wo er neue Inhalte eingeben kann (also zB. Texte, Urls, Jpgs in den Bilder-Ordner hochladen), ohne, dass er den restlichen Code sieht bzw. irrtümlich zerstören kann. Dann ein Aktualisieren-Button und die neuen Inhalte sind online.PHP-Code:<meincontent>
<content titel="ERSTE STORY" info="BILDUNTERSCHRIFT">
<details bild="bilder/01.jpg" email="blabla@aon.at" link="http://www.blabla.com">
<![CDATA[Erster Text: Lorem ipsum dolor sit amet, adipis elit, sed diam nibh euismod. Ut wisi enim. Duis autem vel eum iriure dolor in velit esse molestie consequat, illum dolore eu feugiat nulla facilisis.]]></details>
</content>
<content titel="ZWEITE STORY" info="BILDUNTERSCHRIFT">
<details bild="bilder/02.jpg" email="blublu@aon.at" link="http://www.blublu.com">
<![CDATA[Duis autem vel eum iriure dolor in velit esse molestie consequat, illum dolore eu feugiat nulla facilisis at vero accumsan et iusto odio dignissim.]]></details>
</content>
<content titel="DRITTE STORY" info="BILDUNTERSCHRIFT">
<details bild="bilder/03.jpg" email="blöblö@aon.at" link="http://www.blöblö.com">
<![CDATA[Velit esse molestie consequat, illum dolore eu feugiat nulla facilisis at vero accumsan et iusto odio dignissim.]]></details>
</content>
</meincontent>
So stellt sich das der kleine Max vor. Und Ihr könnt mir dabei wirklich helfen? (Wenn ich sage helfen, dann meine ich: an der Hand nehmen!
Herzlichen Dank im Voraus!
-
Hi,
wenn das Ding in der Tat so aufgebaut ist:sollte das dank des XML-Objektes eigentlich kein großes Problem darstellen. Es kommt z.B. darauf an, ob ein content-tag mehrere details-Tags enthält und welche Attribute erlaubt sind. Im Prinzip brauchst Du einen MovieClip "eintrag", der mehrere Eingabefelder enthält. Nun würde ich das XML-Objekt parsen und entsprechend mehrere Instanzen dieses Clips erstellen, wobei die Textfelder mit den Inhalten (Attribute und CDATA) gefüllt werden. Nach dem Ändern der Inhalte kannst Du das Objekt wieder zusammenbauen und an ein PHP-Script senden, wo es gespeichert wird.Code :1 2 3 4 5 6 7
<meincontent> <content titel="" info=""> <details bild=""> bla bla </details> </content> </meincontent>
Wenn Du im Forum nach "XML" suchst, solltest Du schon einige Ansätze finden, aber ich kann im Laufe des Tages auch ein simples Beispiel posten.
Gruß
.
-
Oh ja - bitte posten, denn Deine Angaben sind mir im Moment noch einfach zu hoch. Lieben Dank!
-
Hi,
ich denke schon, alles auf einmal wäre für den Anfang ein etwas zu großer Brocken, daher schlage ich vor wir gehen Schritt für Schritt vor: Im Anhang findest Du ein Beispiel, mit dem Du schonmal den Inhalt Deiner XML-Datei einlesen und geordnet anzeigen kannst (Du musst nur die ganzen " in anständige Anführungszeichen umwandeln, damit Flash damit was anfangen kann, aber das kannst Du ja von PHP-erledigen lassen).
Dann reden wir darüber, und wenn Du das soweit verstanden hast, gehen wir zum nächsten Schritt: Geänderte Daten hochladen und speichern. Dann können wir die Funktionalität z.B. auch um das Hinzufügen neuer Einträge erweitern.
Gruß
.
-
Das sieht ja schon fantastisch aus. Und so schnell!
Aber das einzig Sinnvolle, was ich bis jetzt hingekriegt habe, ist, das XML-Dokument als "unicode" abzuspeichern, damit auch die Umlaute angezeigt werden.
Peinlicherweise versteh ich schon mal nicht, wie du den einen "entry"-tag 3 x duplizierst, denn wenn ich stattdas hier schreibe:PHP-Code:entry[i] = this.attachMovie("entry", "entry" + i, i);
dann zeigt es überhaupt nur noch einen einzelnen "entry"-block an. Meine erste Frage wäre also: wie kann ich, wenn ich etwa nicht 3, sondern zB. 5 Kapitel befüllen will, das Eingabeformular erweitern?PHP-Code:entry[i] = this.attachMovie("entry", "entry", "entry" + i, i);
Und vielen Dank für die Mühe!
-
Hi,
attachMovie dupliziert nichts, sondern instanziert einen MC aus der Bibliothek (schau mal in die Referenz zum Thema attachMovie). Die 3 Parameter haben nichts mit der Anzahl der instanzierten Clips zu tun, sondern geben den Bezeichner in der Bibliothek, den neuen Instanznamen und die Tiefe der Instanz an. Da das XML-Objekt in einer Schleife durchlaufen wird, werden immer genauso viele Instanzen erzeugt, wie content-Tags in der XML-Datei sind.
Mit Masken oder über Schalter könntest Du natürlich immer nur einen Teil der Einträge anzeigen lassen, oder ein Pseudofenster mit Rollbalken erstellen.
Neue Einträge hinzuzufügen ist eigentlich auch kein Problem; Du müsstest Nur eine weitere (leere) Instanz des entry-MCs erstellen... aber damit würde ich im Moment noch nicht anfangen.
-
Habe jetzt versuchsweise einen vierten Eintrag ins XML geschrieben und.... tatsächlich, ein vierter tag erscheint. Ist ja toll.
Nun frage ich mich erstens: wie passt das alles auf einen Bildschirm, wenn es, sagen wir, 10 Einträge sind (doch mit Rollbalken? oder eine Funktion, dass nur 3 tags auf einmal zugelassen sind und dann kann man weiterschalten?)
Und das zweite Rätsel: was, wenn der Benutzer einen neuen Eintrag anlegen will? Kann man dafür einen leeren tag namens "Neuer Eintrag" erzeugen?
Wie immer 1000 Dank, leider kann ich erst am Abend weiterrätseln.
-
Ich bin ja blöd: das mit dem neuen Eintrag hast du ja geschrieben. Was wäre also der nächste richtige Schritt? Ein Absende-Button?
-
Hi,
ich habe jetzt erstmal einen Rollbalken und Funktionen zum Hinzufügen, Einfügen und Löschen von Einträgen eingebaut.
Beim Einfügen neuer Einträge wird der neue Eintrag vor dem ersten markierten Eintrag eingefügt, beim Löschen werden alle markieren Einträge gelöscht.
Das Absenden wäre der nächste Schritt.
Gruß
.
-
Bin hin und weg. Vor allem weg.
Bei Dir dauert wahrscheinlich das Bauen einer Website nur einen Tag oder so. Da fehlt mir ja noch einiges.
Um Bilder hochzuladen, wäre jetzt natürlich eine Funktion toll, die es dem Benutzer erlaubt, auf seiner Festplatte zu browsen und die entsprechenden Bild-Dateien auszuwählen und einzufügen.
Und wie geht das mit Aktualisieren des PHP-Skripts? Das ist keine Zusatzdatei, sondern eine Serverfunktion, wenn ich nicht irre (und das tu ich ja gern).
Ich bin Dir sehr dankbar für Deine Hilfe!
-
- Bilder hochladen (und im Dateisystem browsen) kannst Du mit Flash vergessen (leider). Es gibt da in den Weiten des Netzes eine gewagte Kombination aus Flash und JavaScript (muss mal danach schauen), aber vielleicht reicht es ja einfach, aus Flash heraus ein JS-PopUp zu öffnen, in dem sich ein Formular mit input-Control vom Typ "file" befindet... ?
- PHP ist eine serverseitige Scriptsprache. Du musst ein Script schreiben, das die von Flash empfangenen Daten in die dazugehörige XML-Datei schreibt - das machen wir zum Schluss, soo kompliziert ist das nicht.
(Statt PHP tuts natürlich auch Perl, JSP usw. aber damit kenne ich mich so gut wie gar nicht aus)
Gruß
.
-
Natürlich reicht es mit einem JavaScript-PopUp. Ich bin ja schon ganz überwältigt, dass es mit Deiner Hilfe überhaupt in den Bereich des Möglichen rückt... Ich harre gespannt...
-
Hi,
ok. Ich habe nun zunächst ein paar Fehler korrigiert (Das Umsortieren der Tiefen der Einträge hat nicht ganz so gut geklappt, aber da wir sowieso bei Flash 7 sind, warum nicht getNextHighestDepth verwenden?
) und eine Funktion zum Zusammenbauen und Versenden geschrieben.
Dabei gibt es mehrere Ansätze, ich habe mich mal dafür entschieden, ein Pseudo-XML-Objekt als String zusammenzusetzen und als "escapte" Zeichenkette per LoadVars-Objekt zu verschicken.
Ich versuche mich nun mal an den dazugehörigen PHP-Script und melde mich wieder, sobald es funktioniert.
Natürlich bringt es nicht viel, wenn ich Dir einfach eine fertige Lösung vorsetze, nicht zuletzt deshalb beschränke ich mich in diesem Beispiel technisch und gestalterisch auf das absolut Nötigste.
Ich bin aber gerne bereit, den Aufbau des Scriptes mit Dir Schritt für Schritt durchzugehen - z.B. auch per ICQ.
Gruß
.
Ähnliche Themen
-
Sensorbank über MIDI-Interface
Von Meldur im Forum .NET Grafik und SoundAntworten: 0Letzter Beitrag: 15.01.09, 17:47 -
Flash Variable an PHP Dokument
Von ICPUI im Forum Flash PlattformAntworten: 2Letzter Beitrag: 29.09.07, 14:29 -
XML Dokument von Server abholen
Von lord_kleener im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 0Letzter Beitrag: 30.05.07, 15:51 -
Flash läuft im lokalen Filesystem, aber nicht über Apache-Server
Von Mag_u im Forum Flash PlattformAntworten: 4Letzter Beitrag: 11.05.05, 14:06 -
NullPointerException bei aufruf einer Methode über ein Interface
Von Valentin- im Forum Enterprise Java (JEE, J2EE, Spring & Co.)Antworten: 7Letzter Beitrag: 04.06.04, 15:45





Zitieren
Login





