Problem mit Regular Expressions in PHP

christian_at

Mitglied
Hallo,

Ich bin am verzweifeln.
Ich möchte Informationen wie Produkt & Preis usw. in ein Array schreiben.

Ich Kopiere einen Text in eine Textarea und es wird mittels php in ein Array aufgeteilt.

Text der Kopiert wird:
ProduktnamePreis:EUR 2,50Verkaufte Stückzahl:1Verkaufsdatum:22.12.11 21:58:36 MEZKäufer:Max Muster (mail@domain.at) [Käufer kontaktieren]Angemeldete Adresse des Käufers:Adresse des Käufers

In Prinzip möchte ich den Produktname, Preis, Stk, Käufer, e-mail, adresse in ein array schubsen.
Der Text kommt immer so nur Produktname, Mail, Name usw. ändert sich.

Jemand eine idee wie das am besten realisierbar ist?
 
Wenn zumindestens ein Trenner, wie Komma, Semikolon oder NULL-Byte vorhanden wäre, wäre es wesendlich leichter... So ist das Ding nicht nur komplex, sondern auch sehr fehleranfällig. Ist der String wirklich so aufgebaut?

 
Hallo,

Ja also übermittelt wird der so über Ajax.

Im Prinzip Könnte man das ganze auch so ohne Ajax aufbauen:
Produktname
Preis:EUR 2,50
Verkaufte Stückzahl:1
Verkaufsdatum:22.12.11 21:58:36 MEZ
Käufer:Max Muster (mail@domain.at) [Käufer kontaktieren]
Angemeldete Adresse des Käufers:Adresse des Käufers

Das heißt ich hätte alles Zeile für Zeile.
Das wird intern gebucht und wird vor dem abschicken immer kontrolliert
smile.gif


Hilft es was wenn es in zeilen kommt?

Danke nochmals für deine Hilfe.
 
Wenn Du Ajax verwendest, und Du es ändern kannst, wäre doch ein sinniges Format angebracht, wie:

CODE <item>
<productname>Produktname</productname>
<preis>EUR 2,50</preis>
<verkauft>1</verkauft>
<verkaufsdatum>22.12.11 21:58:36 MEZ</verkaufsdatum>
<kaeufer>
<name>Max Muster</name>
<email>mail@domain.at</email>
</kaeufer>
<adressen>
<adresse>Adresse 1 des Käufers</adresse>
<adresse>Adresse 2 des Käufers</adresse>
</adressen>
</item>


Gleiches Funktioniert natürlich auch mit JSON (weniger Overhead), aber wenn ich den Input vorgeben kann, wieso nicht richtig damit arbeiten, statt irgendwelche Krücken zu bauen.

Bringen würde es nur was, wenn man ein sauber auswertbares Format hat, wie oben mit XML, JSON oder eben CSV. Auch ist nicht mal bekannt, wie die Adresse gespeichert/übergeben wird.
 
Sascha hat's bereits sehr gut erlaeutert:
Sinnvolle Datenstrukturen vereinfachen dein Vorhaben erheblich.

Wenn ich das richtig verstehe, schickst du die Daten clientseitig zum Server, richtig? Kannst beim AjaxCall die Parameter auch via Post uebergeben, dann hast via PHP die Daten bereits in einem Array ($_POST) und brauchst keinen XML, JSON, CSV Decoder zu verwenden.
 
Hallo Wasi,

Das mit dem Zuordnen der Daten habe ich schon geschafft
smile.gif

Da ich oder ein bekannter das Script verwendet ist die fehlerquelle ziemlich niedrig.

Jetzt habe ich noch ein Problem.

In der Textarea steht alles untereinander sodass ich die zeilen auslesen kann.
Leider kommt das ganze über Ajax nur in einer Zeile an und in keinen Zeilenumbrüche obwohl das ganze über Post geschickt wird.

Wenn ich das noch hinbekomme dann funktioniert alles
smile.gif


Hat jemand eine Idee.
 
Da wird doch sicherlich ein \n mitgegeben. Doch eigentlich war meine Idee die Daten in einzelne Post Parameter zu unterteilen. Wenn du nur einen Parameter uebermittelst, sind Konstrukte wie XML, JSON etc. wieder von Vorteil.
 
Zurück
Oben