Mailinglisten-Archive |
Jürgen Mayer schrieb: > hallo, > > In einer MySQL-Tabelle habe ich ein Datumsfeld vom Typ "timestamp" > > Wenn ich nun in meinem PHP-Script ein Update auf einen Datensatz fahre und > dabei diese mit den selben Werte beschreiben wie dort schon drinsteht wird das > Datumsfeld nicht aktuallisiert. > > Sobald aber ein Feldinhalt sich von den Werten die schon in diesem Datensatz > drinstehen unterscheidet wird das Datumsfeld wunderbar automatisch vom der > MySQL-Datenbank aktualisiert. > > Mir ist klar das für dieses Verhalten [keine Änderung des Timestamps wenn sich > die Daten nicht ändern] schon gute Gründe sprechen. > > Gibt es aber eine elegante Möglichkeit den Timestamp immer zu setzen unabhänig > von den Werten in die Datenbank geschrieben werden? > > Meine jetztige Lösung ist das ich zuerst ein Feld mit 0 beschreibe und dann im > zweiten Schritt dieses Feld auf den aktuellen Wert setzte ist mir etwas zu > "unelegant" ;-) Verwende nicht den Feldtyp 'Timestamp' sondern 'integer' und schreibe bei jeder Änderung einen von PHP generierten Timestamp rein. Alternativ verwende ein zweites Timestamp-Feld, in das du immer den aktuellen Timestamp einträgst. Dann hast du sogar einen Timestamp, wann das letzte mal was aufgerufen wurde UND was verändert wurde. So hab ich das bei mir immer gelöst, wenn ich einen Timestamp brauche, bei dem ich selbst bestimme, was da drinsteht. Grüße Andreas -- wdv Medien & Kommunikation GmbH & Co. OHG Mediendatenverarbeitung Andreas Heigl Siemensstrasse 6 61352 Bad Homburg Germany Telefon +49-(0)6172-670-185 Telefax +49-(0)6172-670-181 www.wdv.de
php::bar PHP Wiki - Listenarchive