Willkommen in der Webstatt Zum Webstatt Blog und Stories
fish fish am 19.01.07 14:37

tag. frage: wie kann ich ein newsletter-austragen-script bauen? also wenn jemand eine leere email an hallo_ich_will_euren_bloeden_newsletter_nicht_mehr@der_blode_newsletter.com schickt, soll überprüft werden, ob die absender-emailadresse in der datenbank drinsteht und gegebenenfalls rausgelöscht werden. wie geht sowas?

netcup.de Warum gibt es hier Werbung?
BNightSpeeder am 19.01.07 14:58

Du brauchst zuerst mal eine Verbindung zum Server wo die e-mail liegt.
Dan brachst du ne Class die sich mit dem POP3 Server verbinndet
http://www.phpclasses.org/browse/package/1120.html
Dan musst du dir nur noch ein script basteln was die DB und die mails durchforstet.

Mfg. BNS

Snake am 19.01.07 14:59

das sind mailing listen. du kannst aber auch ganz einfach nen cronscript nehmen, und alle xx stunden ein postfach prüfen, ob was in nem entsprechenden postfach liegt.
aber wie gesagt: eigendlich machen das nur mailing listen so

der_nic der_nic am 19.01.07 14:59

da müsstest du zuerst einen Server mit einem installieren POP-Dienst haben (oder IMAP).
Dann müsstest du ein Programm haben das die einkommenden Email überprüft und den Absender ausliest usw. das dürft mit PHP etwas schwer werden.

Alternative:
Mach doch einfach einen Link à la delete_me_from_newsletter.php?email=bla@bla.com

fish fish am 19.01.07 15:05

genau das werde ich auch machen ;-D das andere ist mir zu stressig..

Dustwolf Dustwolf am 19.01.07 15:11

Idealerweise solltest du vllt. nen Kontrollcode benutzen. Nicht, dass einfach jemand alle Leute "just for fun" austrägt...

fish fish am 19.01.07 15:25

hab ich schon eingebaut (auch fürs eintragen). ich habe das jetzt nur grade nicht geblickt, dass ich das fürs austragen so machen kann wie mit dem eintragen (mit link auf die webseite)

BNightSpeeder am 19.01.07 16:51

man könnte es aber anstatt eines Sicherheitscodes es einfach so machen

datei.php?austragen=70e884287993e14bbb132168964e7420

einfach nen md5 Hash = [EMAIL]Hallo@email.de[/EMAIL]-10.10.06
Das Datum ist z.B für das Registrierungsdatum, somit wären "Just for Fun" austrägen unterbunden

Al3x0r Al3x0r am 19.01.07 16:58

Ich würde einfach einen x-beliebigen Hash generieren und keine Daten wie email oder so verwenden, denn auch mit BNightSpeeders Methode kann man immernoch, wenn man den Trick gerafft hat einen hash von email und reg datum machen. An einen unäbhängig generierten Hash ist hingegen nicht ranzukommen.

fish fish am 19.01.07 17:05

also zum passwort generieren verwende die die funktion hier:
function passwort_generieren($chars) {
if (!isset($chars)) {
$chars = 8;
}
$loops = $chars / 4;

$conso=array("b","c","d","f","g","h","k","l","m","n","p","r","s","t","w","x","z");
$vocal=array("a","e","i","o","u");
$numerics=array(1, 2, 3, 4, 5, 6, 7, 8, 9, 0);
$specials=array("_", "!");

$password="";

srand ((double)microtime()*1000000);

for($f=1; $f<=$loops; $f++) {
$password.=$conso[rand(0,15)];
$password.=$vocal[rand(0,4)];
$password.=$specials[rand(0,1)];
$password.=$numerics[rand(0,9)];
}

return $password;

}

die macht schöne passwörter die man sich zur not einigermassen merken kann. die werden dann in die datenbank gespeichert zusammen mit anmeldedatum und emailadresse. wenn die emailadresse nicht innerhalb von 6 stunden bestätigt wird (das geschieht über den code: wenn man den newsletter bestellt, dann wird man halt nochmal zum bestätigen über nen link aufgefordert). zum löschen wird dann halt bei jedem newsletter ein link zur abbestellen-seite mitgeschickt. ist da irgentwas unsicher?

BNightSpeeder am 19.01.07 17:40

ich sehe da keine Lücke bei, höchsten wenn du den Leuten nach 6 Stunden eine zweite mail schickst könnte es den empfänger ärgern wenn er ihn in wirklichkeit nicht bestellt hat.

nuit nuit am 19.01.07 17:44

aber der prüft ja dann nur die Emailadresse, bei diesen Maillinglisten....man kann ja relativ leicht emailadressen faken :D würde das dann nicht auch gehen, dass man wenn man die emailaddresse von jemandem kennt, der dort angemeldet ist, austragen kann? so rein spasseshalber? man muss ja bloss eine mail mit dem absender [EMAIL]foo@foo.com[/EMAIL] schicken, halt die emailadresse und ads wars schon???

fish fish am 19.01.07 17:49

hm wie willst du jemanden anders denn austragen, wenn du sein passwort nicht hast? vesrtehe ich grade nicht..

Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt