Last Email Sent = NULL

PHP Newsletter Software/Script und E-Mail-Marketing Software SuperWebMailer

Moderator: mirko

Antworten
heisinger
Beiträge: 45
Registriert: 06.03.2011, 21:04

Re: Last Email Sent = NULL

Beitrag von heisinger »

Danke für deine Antworten.

Ich habe es jetzt so gelöst um neuanmeldungen auszusortieren:

Ein Cronjob schaut regelmäßig nach, welcher Datensatz letzter mail versand NULL und logischen wert 1 auf 1 stehen hat, und schreibt dort dann ein fiktivies Datum in den letzten Mailversand rein. Somit kann ich wunderbar eine regel erstellen welche diese Mails ausfiltert.


LG
Benutzeravatar
mirko
Beiträge: 23082
Registriert: 25.11.2001, 15:14
Wohnort: Leipzig
Kontaktdaten:

Re: Last Email Sent = NULL

Beitrag von mirko »

Das könnte man aber habe ich nicht so gemacht, weil dieses Feld eigentlich nur für Statistik gedacht war.
heisinger
Beiträge: 45
Registriert: 06.03.2011, 21:04

Re: Last Email Sent = NULL

Beitrag von heisinger »

man könnte ja in der datenbank anstatt den wert null einen standardwert vergeben. Oder hätte das andere Auswirkungen? Man könnte ja somit anstatt NULL zb 2012-04-01 00:00:00 eintragen und dann mit diesem Datum vergleichen.
Benutzeravatar
mirko
Beiträge: 23082
Registriert: 25.11.2001, 15:14
Wohnort: Leipzig
Kontaktdaten:

Re: Last Email Sent = NULL

Beitrag von mirko »

Nein, weil das Feld NULL ist. Wenn dann muss man mit jjjj-mm-tt hh:nn:ss (j=Jahr, m=Monat, t=Tag, h=Stunde, n=Minute, s=Sekunde) vergleichen, das geht aber nicht bei diesem Wert, weil es immer NULL ist, wenn noch keine E-Mail versendet worden ist. Erst nach dem 1. E-Mail-Versand kann man damit vergleichen lassen.
heisinger
Beiträge: 45
Registriert: 06.03.2011, 21:04

Re: Last Email Sent = NULL

Beitrag von heisinger »

aber wie kann ich dann anhand der regeln nach "Datum des letztens E-Mail versand" sortieren?

Wenn ich Feld "Datum des letzten E-Mail Versand" Vergleichsoperator "=" und Vergleichszeichenkette leer lasse, müssten ja theor. die ausgeworfen werden welche noch nie eine Mail erhalten haben. Oder irre ich mich da?

LG und Danke
Clemens
Benutzeravatar
mirko
Beiträge: 23082
Registriert: 25.11.2001, 15:14
Wohnort: Leipzig
Kontaktdaten:

Re: Last Email Sent = NULL

Beitrag von mirko »

Das kann man nicht.
heisinger
Beiträge: 45
Registriert: 06.03.2011, 21:04

Last Email Sent = NULL

Beitrag von heisinger »

Hallo wie kann ich eine Regel definieren, die mir ausgibt welche User noch keine Email erhalten haben?

Ich habe den angezeigten SQL Code kleinwenig verändert:

Code: Alles auswählen

SELECT  `newsletterempfnger_members`.*, 
IF(`newsletterempfnger_members`.`u_Birthday` <> '0000-00-00', YEAR( CURRENT_DATE() ) - YEAR( `newsletterempfnger_members`.`u_Birthday`), 0) 
AS `MembersAge` FROM `newsletterempfnger_members`
 LEFT JOIN `heisinger_globalblocklist` ON `heisinger_globalblocklist`.`u_EMail`=`newsletterempfnger_members`.`u_EMail`
 LEFT JOIN `newsletterempfnger_localblocklist` ON `newsletterempfnger_localblocklist`.`u_EMail`=`newsletterempfnger_members`.`u_EMail`
 LEFT JOIN `newsletterempfnger_maillisttogroups` ON `newsletterempfnger_members`.`id`=`newsletterempfnger_maillisttogroups`.`Member_id`
 LEFT JOIN `willkommensmail_groups` ON `willkommensmail_groups`.`ml_groups_id`=`newsletterempfnger_maillisttogroups`.`groups_id`
 WHERE (`newsletterempfnger_members`.`IsActive`=1 AND `newsletterempfnger_members`.`SubscriptionStatus`<>'OptInConfirmationPending')
 AND (`heisinger_globalblocklist`.`u_EMail` IS NULL AND `newsletterempfnger_localblocklist`.`u_EMail` IS NULL) 
 AND (`willkommensmail_groups`.`ml_groups_id` IS NOT NULL)
 AND 
( 
 (   (`newsletterempfnger_members`.`LastEMailSent` IS NULL)
  )
)

Verändert wurde nur die 3.letzte Zeile auf IS NULL

Wie kann ich das mit dem Regelwerk bauen?

Bzw. kann ich wo den SQL Code ändern?

LG
CLemens
Antworten