xp-user
Goto Top

Simple E-Mail Benachrichtigung bei einem Eintrag in eine Mysql Tabellen Spalte

Hallo zusammen,

Ich habe eine MySql Datenbank mit diversen Tabellen. Nun benötige ich ein simples Script, welches mir eine E-Mail schickt, wenn in einer speziellen Spalte einer Tabelle eine Änderung vorgenommen wurde.

Das Script würde dann mit einem Cron Job einmal täglich abgerufen werden, worauf dann wie gesagt eine E-Mail mit der Änderung geschickt werden würde.

Wer weiss wie das geht?

Content-Key: 197153

Url: https://administrator.de/contentid/197153

Printed on: April 24, 2024 at 00:04 o'clock

Member: it-frosch
it-frosch Jan 17, 2013 updated at 13:28:04 (UTC)
Goto Top
Hallo xp-user,


wenn in einer speziellen Spalte einer Tabelle eine Änderung vorgenommen wurde.
Für so etwas nimmt man Trigger die auf der entsprechenden Tabelle sitzen und bei besagter Änderung (INSERT, DELETE, UPDATE) eine Aktion auslösen.

Du könntest, da du ja nicht erklärst welche Änderungen du überwachen willst, auf alle deiner Tabellen Trigger (INSERT / UPDATE / DELETE) setzen, die dann bei der jeweiligen Änderung einen Datensatz in eine Log Tabelle schreiben.
Diese Log Tabelle kannst du dann über ein Script via Cronjob auslesen und dir zuschicken lassen.

Natürlich sind so viele Trigger für die Performance nicht so günstig. Also überlege dir genau was du eigentlich überwachen willst.

grüße vom it-frosch
Member: xp-user
xp-user Jan 17, 2013 at 14:23:06 (UTC)
Goto Top
Hallo it-frosch

Vielen Dank für deine Antwort.

Es handelt sich um einen Shop, wo der Kunde die Möglichkeit hat einen Eintrag auf "on" zu stellen. Also in der Tabelle steht nichts drin, oder "on". Nur leider erhält man keine Benachrichtigung wenn der Kunde diese Änderung vornimmt. Ich habe mir jetzt die Tabelle ausgegeben mit allen Kunden, welche diesen Eintrag auf on haben, nur ist das mühsam, da ich täglich nachschauen müsste, ob neue Kunden oder bestehende Kunden diese Option auf on stellen. ...

Ich denke der Trigger müsste in dem Falle INSERT / UPDATE / DELETE auf diese eine Tabelle respektive die eine Spalte in dieser Tabelle angewendet werden.

Hab mich bis heute noch nicht mit Trigger beschäftigt. Werde mich mal durch Google schlau machen, ob es da allenfalls schon so etwas gibt.

face-smile nochmals herzlichen Dank

Es grüsst, Xp-user der heute mit Mac arbeitet.
Member: it-frosch
it-frosch Jan 17, 2013 at 15:36:24 (UTC)
Goto Top
Hallo xp-user,

wenn in einem existierenden Datensatz nur der Schalter gesetzt wird dann brauchst du eine Update Trigger. Wird hingegen ein neuer Datensatz in der Tabelle angelegt dann ist der Insert Trigger notwendig.

Der Trigger wird auf die Tabelle gesetzt und du kannst dann die Spalte angeben, die geprüft werden soll.

Schau mal hier, das dürfte genau das sein, was du willst. face-wink
http://bytes.com/topic/mysql/answers/726296-sending-e-mails-through-mys ...

grüße vom it-frosch
Member: xp-user
xp-user Jan 18, 2013 at 06:49:58 (UTC)
Goto Top
Hat funktioniert. Vielen Dank it-frosch