654 Aufrufe
Gefragt in Skripte(PHP,ASP,Perl...) von
Hallöchen,

ich habe ein kleines Tool geschrieben, in das ich Datensätze per E-Mail einliefern kann, kleines Beispiel für die E-Mail:

Vorname: Max
Nachname: Muster
Strasse: Musterstraße 2
... usw

Ich parse dann nach den Bezeichnern (Vorname, Nachname) etc und nehme den Wert dahinter, um ihn in der Datenbank im richtigen Feld zu speichern.

Nun habe ich es so erweitert, dass ich im Tool für jeden Bezeichner einen Alias vergeben kann, z.B. statt "Nachname" nur "Name" oder statt "Strasse" nur "Str". In der Datenbank hab ich das bisher so gespeichert, dass ich eine extra Tabelle hatte mit exakt den Feldern der Tabelle, wo die Daten gespeichert werden, nur dass ich in dieser Tabelle nicht die Daten speichere, sondern die Aliase.

Problem ist hierbei, dass ich zum einen viele Felder habe, in denen gar keine Daten gespeichert sind, zum anderen, dass bei einer Anpassung der einen Tabelle auch immer die andere mit angepasst wreden muss. Deswegen wollte ich mir etwas effizienteres überlegen.

Ich dachte da etwa im Programm an ein Array, welches nur die Felder enthält, die auch einen Alias besitzen. z.b.

array (
"Vorname" => "fname",
"Nachname" => "lname",
"Strasse" => "str"
);


Dieses würde ich dann serialisiert in einem einzigen Tabellenfeld unterbringen können. Ich würde es dann nach dem serialisieren noch mit base64 kodieren wegen den Sonderzeichen.

Die Frage ist, ob das so sinnvoll ist, oder ob es ne bessere Möglichkeit dafür gibt? Habt ihr ne Idee wie man sowas lösen könnte oder würdet ihr es genauso machen?

Gruß Daniel

Deine Antwort

Dein angezeigter Name (optional):
Datenschutz: Deine Email-Adresse benutzen wir ausschließlich, um dir Benachrichtigungen zu schicken. Es gilt unsere Datenschutzerklärung.
Anti-Spam-Captcha:
Bitte logge dich ein oder melde dich neu an, um das Anti-Spam-Captcha zu vermeiden.
...