phpbar.de logo

Mailinglisten-Archive

[php] 1:n Beziehung nach Bearbeitung erneut schreiben, wie?

[php] 1:n Beziehung nach Bearbeitung erneut schreiben, wie?

Henning Heil lists at h-quadrat.com
Sam Mar 27 13:03:33 CET 2004


Tach!

Ich habe ein kleines Modul für Notizen geschrieben und jeder Notiz kann 
man mehrere Kontakte hinzufügen. Per JS schreibe ich die UIDs der 
Kontakte in ein hidden field, erhalte dann im näxten Schritt einen 
string a la "1|74|18|12" und kann dann mit einem explode meine UIDs 
wunderbar in ein array bekommen und in die notes_has_contacts Tabelle 
schreiben. So weit, so gut.

Jetzt kann der Benutzer aber eine Notiz bearbeiten und ich bekomme ggf. 
einen anderen string wie z.B. "1|4|22" (freilich viel später, der alte 
string ist jedenfalls nicht mehr verfügbar). Die für mich derzeit 
unüberwindliche Schwierigkeit liegt darin, die alten mit den neuen 
Einträgen zu vergleichen und das Delta herauszufinden. Die neuen Werte 
kann ich leicht in ein array bekommen, die alten mit einem einfachen 
select auch, aber wie vergleiche ich?

Ich kann natürlich in dem neuen array mehr, weniger oder auch völlig 
andere Werte haben, versteht sich.

Ein einfacher Ansatz/workaround wäre, die alten Werte komplett aus der 
Tabelle zu löschen und einfach alle neu zu schreiben - das ist aber ne 
ziemliche UID-Verschwendung in der 1:n Tabelle und deswegen möchte ich 
das eigentlich nicht.

Jemand kreative Ideen aus dem Dilemma?

Danke & Gruss,

Henning

php::bar PHP Wiki   -   Listenarchive