mmofacts.com

Texte Editieren im Admininterface

gepostet vor 15 Jahre, 3 Monate von BlackScorp

Hi leute ich habe ein kleines Problem,

ich verwende ein Adminiterface in dem ich Texte einer bestimmten sprache erstellen/löschen/editieren kann. nun habe ich halt das problem beim editieren. die Tabelle zu den Texten sieht folgendermaßen aus:

ID | textname | text | typId | languageId

der textname ist ein Name, mit welchem ich den Text mit der Language Klasse anzeige. Etwa so:

echo Language::showText('welcome');

typId ist der Fremdschlüssel der Tabelle types es dient nur zur Visuellen darstellung um welchen Text es sich dabei handelt. ist es zb ein Text oder eine Überschrift oder eine Button beschriftung etc.

und languageId ist der Fremdschlüssel einer sprache 1 ist zb Deutsch 2 ist English 3 ist Russisch etc..

so und nun zu meine Problem.

Nehmen wir mal an ich habe über das Admininterface ein Text erstellt und dann denke ich :"ahh , mist der textname ist nicht gut gewählt" dann möchte ich das ganze ändern jedoch befor ich die geänderten daten in der DB abspeichere will ich überprüfen ob der textname bereits exestiert das funktioniert noch ganz gut. aber was wenn ich NUR den textinhalt ändern will und nicht den textnamen, da kann ich schon nicht abspeichern weil der textname in der DB bereits exestiert. Meine frage wäre jetzt gibt es eine Methode wie ich es schaffen kann zu überprüfen ob der Text in den Eingabefeldern verändert wurde oder nicht? also ich will nicht immer nich dem textnamen in der Datenbank suchen sondern nur dann wenn es verändert wurde.

ich habe mir das überlegt mit einem hidden input field umzusetzen, jedoch halte ich diese methode für einen "billigen einfall". Vllt kennt jemand von euch eine idee wie ich es umsetzen kann.

MFG

gepostet vor 15 Jahre, 3 Monate von buhrmi

Pragmatisch: 2 Buttons ("Änderungen speichern", "Neuen Text speichern")

gepostet vor 15 Jahre, 3 Monate von BlackScorp

naja so einfach geht das ja nicht. ich möchte ja bei Änderung speichern erstmal prüfen was habe ich verändert und wenn ich es verändert habe , exestiert es bereits in der db?

gepostet vor 15 Jahre, 3 Monate von Störti

Naja, wenn du wissen willst, was du geändert hast, musst du schon irgendwie wissen, was der alte Wert war, d.h. entweder lieferst du als hidden-Feld den alten Wert mit oder du vergleichst mit dem aktuellen DB-Eintrag (was transaktionstechnisch sicher die bessere Variante wäre).

Alternativ kannst du auch mit Javascript Änderungen des Textfelds überwachen und dann ein changed-Flag mitliefern. Aber da ist das Mitliefern des alten Wertes die einfachere Variante...

gepostet vor 15 Jahre, 3 Monate von BlackScorp

Original von Störti

du vergleichst mit dem aktuellen DB-Eintrag (was transaktionstechnisch sicher die bessere Variante wäre).

hm.. ich liefere ja die id des textes im hidden feld immer mit damit ich UPDATE SET sowieso WHERE id= id ausführen kann. hm.. garnet so üble idee davor abzufragen was in der db steht und was eingegeben wurde.

danke ich werde es gleich mal umsetzen

MFG

gepostet vor 15 Jahre, 3 Monate von buhrmi

du musst die id des datensatzes den du bearbeitest natürlich irgendwie mitschleifen dann sparst du dir die überprüfung

Auf diese Diskussion antworten