Wie funktioniert jumpurl in direct_mail?

Gerade hatte ich einen Fehler beim Aufrufen einer URL aus einem Newsletter (versendet über direct_mail), in dem ich jumpurls nutze. Die URL war in dieser Form:

www.domain.de/index.php?id=2&rid=t_2&mid=2&aC=7a7f6b54&jumpurl=2

Allerdings wurden beim Redirect auf die eigentliche URL die Platzhalter, z. B. ###USER_uid###, nicht ersetzt. Also habe ich recherchiert, wo die jumpurls gespeichert werden. Ich bin davon ausgegangen, dass diese in einer Tabelle gespeichert werden. Das ist aber nicht der Fall, bei direct_mail werden die jumpurls mit der Funktion checkDataSubmission() verarbeitet:

  1. Anhand dem Parameter „mid“ wird der zugehörige Newsletter aus der Datenbank ausgelesen.
  2. In dem Newsletter wird anhand dem Parameter „jumpurl“ der zugehörige Link geholt, in unserem Beispiel also der zweite Link. Dieser sieht, wenn es sich um den Abmelden-Link handelt, beispielsweise so aus: www.domain.de/index.php?id=3&cmd=delete&aC=###SYS_AUTHCODE###&rU=###USER_uid###
  3. Nun wird anhand dem Parameter „rid“ der Benutzer ermittelt, an den der Newsletter geschickt wurde. In unserem Beispiel hat der Parameter den Wert „t_2„, also hat unser Benutzer die ID 2 und liegt in Tabelle „tt_address„. Alternativ könnte der Wert auch „f_2“ lauten, dann ist der Benutzer in Tabelle „fe_users“ gespeichert.
  4. Nun werden die Platzhalter in der URL mit den Daten des Benutzers ersetzt, Ergebnis ist z. B. eine solche URL: www.domain.de/index.php?id=3&cmd=delete&aC=7a7f6b54&rU=2
  5. Der Parameter „aC“ ist ein Authentifizierungscode, dieser wird von direct_mail weitergereicht, zuvor wurde er aber schon vom TYPO3 System auf die Gültigkeit überprüft.

Nun weiß ich auch, wieso die Platzhalter nicht ersetzt wurden: Der Benutzer war in der Datenbank als gelöscht markiert, er hat sich also bereits vom Newsletter abgemeldet.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.