Newsletter mit Linkbestätigung
Uwe_L
- php
Guten Abend,
Achtung Anfänger :D
Ich habe ein kleines Script mit dem der User eine Newsletter bestellen kann.
Der User gibt seine Mailaddi in eine Formular ein und das Formular sendet die mailaddi in eine Tabelle und als zweite Spalte Cobfirm='nein'
Er bekommt die Bestätigungsmail an seine Adresse zugesandt, dort muss er einen Link aufufen, in dem ich als GET Parameter die Mailadresse anhänge.
...bestätigungsseite?mail=mailadresse@yahoo.de
Diesen GET Parameter habe ich dann in einem hiddenfeld name='mail'
Der User muss jetzt noch einen Submitbutton drücken und dann kommt eine update auf die Tabelle mit den Mailadressen. Das Feld "confim" ist jetzt nach dem update auf ja.
Ab jetzt bekommt der User Newsletter.
Was mir nicht gefällt ist das mit dem Get, ich kann ja mir eine Newsletter bestellen, bestätige und sehe wie das funkioniert, dann gebe ich bößartig eine Mailadresse ein, bekomme keine Bestätigungsmanil, kann aber die Seite wieder aufrufen und den GET Paramter mit "hand" ändern.
Dann gehts ja auch.
Wie kann ich eine sichere (einfache anfängerverständliche) Mailbestätigung machen?
Vielen Dank
UWE
Er bekommt die Bestätigungsmail an seine Adresse zugesandt, dort muss er einen Link aufufen, in dem ich als GET-Parameter die Mailadresse anhänge.
...bestätigungsseite?mail=mailadresse@yahoo.de
Was mir nicht gefällt ist das mit dem Get, ich kann ja mir eine Newsletter bestellen, bestätige und sehe wie das funkioniert, dann gebe ich bößartig eine Mailadresse ein, bekomme keine Bestätigungsmanil, kann aber die Seite wieder aufrufen und den GET-Paramter mit "hand" ändern.
Dann gehts ja auch.
Richtig erkannt.
Wie kann ich eine sichere (einfache anfängerverständliche) Mailbestätigung machen?
Du legst jede Bestätigungsanforderung zusammen mit der E-Mail-Adresse unter einer eindeutigen, aber zufällig erstellten Kennung (vulgo: ID) auf dem Server ab (Datenbanktabelle oder simple Datei). Statt der E-Mail-Adresse schickst du diese Kennung auf die Mail-Rundreise zur Bestätigung. Beim Bestätigungsvorgang liest du die E-Mail-Adresse anhand der Kennung aus der lokalen Tabelle und trägst sie in den Verteiler ein.
Hi,
Du legst jede Bestätigungsanforderung zusammen mit der E-Mail-Adresse unter einer eindeutigen, aber zufällig erstellten Kennung (vulgo: ID) auf dem Server ab (Datenbanktabelle oder simple Datei).
Dann aber bitte keine einfach fortlaufende nummerische ID oder aehnlich simples verwenden - denn die laesst sich auch einfach durch Hochzaehlen o.ae. erraten.
Sowas wie uniqid bietet sich eher an.
MfG ChrisB