online 1
gast (50)

/ Forum / Skripte(PHP,ASP,Perl...)

Skripte(PHP,ASP,Perl...)Skripte(PHP,ASP,Perl...)

Fragevon Beezle-Bug vom 08.01.2019, 22:23 Options

mit PHP EINE best. Zeile in XML überschreiben

Hi,
ich versuch nun schon seit 2 Wochen mit PHP eine Zeile in einer XML-Datei durch eine neue zu ersetzen; bin leider was PHP betrifft blutiger Anfänger :-(

Prinzipiell geht es darum: Man soll online die Einträge zu einer Diashow, die in Flash programmiert ist beschriften können, bzw. Beschriftungen ändern. Die Variablen sind z.B Bildtitel, (Entstehungs-)Jahr, Anmerkungen, usw. Gespeichert sind die Variablen in einer .xml Datei nach folgendem Muster:


<?xml version"1.0"?>
<Bilder>
<Bild bildtitel="In dieser Zeile nichts ändern!" jahr="Erscheinungsjahr" groesse="10 x 20" technik="Acryl" anmerkungen="Hier muss nichts stehen" ></Bild>
<Bild bildtitel="Theatinerkirche" jahr="2003" groesse="30 x 40" technik="Aquarell" anmerkungen="Dieses Bild ist besonders toll" ></Bild>
<Bild bildtitel="Hofgarten" jahr="2001" groesse="30 x 40" technik="Aquarell" anmerkungen="" ></Bild>
<Bild bildtitel="Hofgarten" jahr="2001" groesse="30 x 40" technik="Aquarell" anmerkungen="" ></Bild>
//usw.
</Bilder>


Wenn man auf ein kleinen Thumbnail klickt, liest Flash die zugehörigen Variablen aus, diese kann man dann in diversten Textfeldern bearbeiten (klappt wunderbar) und wenn man auf speichern klickt, sollte das admin.php-Skript die Variablen aus den Textfeldern wieder in die xml Datei reinschreiben und zwar in die Zeile, in der sie zuvor ausgelesen wurden, da es sich ja um ein bestimmtes Bild handelt.

Ich schaffe es, die Variablen an php zu übergeben, eine Zeile der Form

<Bild bildtitel="Nymphenburger Park" jahr="2003" groesse="30 x 40" technik="Aquarell" anmerkungen="" ></Bild>


zu generieren und in einer leeren .xml Datei abzuspeichern.

Aber ich schaffe es nicht, dass das Skript zu Zeile xy (Die Variable kann ich leicht übermitteln lassen) in der xml Datei springt, die Zeile komplett löscht und dann an genau dieser Stelle die neu generierte Zeile einfügt. :-(

Ich bin wirklich am Verzweifeln und mit Links zu anderen Threads ist mir glaube ich nicht weitergeholfen, da ich inzwischen wohl fast jeden gelesen haben müsste - ohne Erfolg.
Tut mir Leid, aber ich kenne mich mit der php sprache überhaupt nicht aus. Wäre super, wenn du kurz eine Antwort schreiben könntest, ich denke, für einen Profi ist mein Problem eigentlich gar nicht so schwer... oder?

Merci!


Antwort schreiben

Antwort 1 von Beezle-Bug vom 08.01.2019, 22:27 Options

Ach so, ich kann euch ja mal den bisherigen code geben ;-)
Hier sieht man, welche Variablen von Flash gesandt werden (var_nummer entspräche dann der Zeilennummer, die geändert werden müsste)


<?php
   //Capture data from $_POST array

   $title = $_POST[´Title´];
   
$var_nummer = $_POST[´var_nummer´];
$var_bildtitel = $_POST[´var_bildtitel´];
$var_jahr = $_POST[´var_jahr´];
$var_technik = $_POST[´var_technik´];
$var_anmerkungen = $_POST[´var_anmerkungen´];
   
 


   //Make one big string in a format Flash understands and save it to counter.xml
   $toSaveXML = "<Bild bildtitel=".$var_bildtitel." jahr=".$var_jahr." groesse=".$var_groesse." technik=".$var_technik." anmerkungen=".$var_anmerkungen." ></Bild>";
//Open a file in write mode
   $fp = fopen("counter.xml", "w");
   if(fwrite($fp, $toSaveXML)) echo "writing=Ok";
   else echo "writing=Error";
   fclose($fp);   
   }
?>

Ähnliche Themen

docx läst sich nicht mehr öffnen
bierhurra  11.02.2007 - 108 Hits -

Wozu XML?
greg68  23.04.2007 - 489 Hits - 3 Antworten

XML als Value Options mit PHP einlesen
Tob2007  13.11.2007 - 135 Hits -

XML wird nicht richtig angezeigt
Netdeus  07.01.2008 - 461 Hits - 5 Antworten

XML Datei schützen?!
TheTobi  13.06.2008 - 66 Hits - 4 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026