phpmailer umschreiben ??? hilfe
doyle
- php
mein server hat irgendwie probleme diese php zu benutzen,
irgendwas mit global-tag, oder so!?
problem ist, ich kenn mich mit php nicht iwrklich aus, und das ganze wird von einer flash aus aufgerufen, von daher darf eigentlich nicht zu viel verändert werden.
die PHP ist ein witz, aber auf meinem alten server funktioniert sie, auf dem neuen nicht mehr:
<?php
$mailTo="newsletter@partyspam.at";
mail($mailTo, "$betreff", "Newsletteranmeldung" , "From: $email");
$signal=1;
echo "&signal=$signal&";
?>
vielleicht muss man nur 2-3 attritbute einbinden?
wichtig ist im prinzip nur, dass sie an bestehende Emailadresse mit dem genannten Tag im Betreffe versendet wird.
bitte um hilfe
danke
doyle
Mit Zitat antworten
Hellihello doyle,
vielleicht hilft Dir, wenn Du die drei Variablen ersetzt nach dem Schema: $mailTo durch $_REQUEST['mailTo'];
Probiers doch erstmal mit einer aus.
Gruß,
frankx
also register globals is off
d.h. ich muss wohl alles umschreiben, aber wie ???
lg
doyle
Hellihello,
d.h. ich muss wohl alles umschreiben, aber wie ???
ich würde mich wiederholen.
Gruß,
frankx
ist es so richtig ?
<?php
$mailTo="newsletter@partyspam.at";
mail($_REQUEST['mailto'], $_REQUEST["betreff"], "Newsletteranmeldung" , "From: ".$_REQUEST["email"] );
$signal=1;
echo "&signal=$signal&";
?>
?
danke
Hellihello doyle,
nö, die Variablen, die Du übers Formularfeld erhältst, muss du einsetzten. Und zwar genau so, wie der Name des Formularfeldes ist.
wenn Du $mailTo im Script erst selbst definiest, musst Du das nicht änderen. Der Rest aber scheint o.k.
So könnte es auch gehen.
mail("newsletter@partyspam.at", $_REQUEST["betreff"], Newsletteranmeldung" , "From: ".$_REQUEST["email"] );
So auch...;
$mailTo="newsletter@partyspam.at";
$nachricht="Newsletteranmeldung für Mailadresse: \n".$_REQUEST["email"];
mail($mailTo, $_REQUEST["betreff"],$nachricht, "From: ".$_REQUEST["email"] );
Gruß,
frankx
echo $begrüßung;
mail("newsletter@partyspam.at", $_REQUEST["betreff"], Newsletteranmeldung" , "From: ".$_REQUEST["email"] );
Der Rest aber scheint o.k.
Ja, er scheint o.k. zu sein, ist er aber nicht. Denn der Teil mit dem From ist anfällig für Email-Header-Injection. Wenn jemand in das Feld email so etwas eingibt: email@example.com\nBcc: spamopfer@example.org, wird eine Kopie der Mail versendet, die vom Scriptbetreiber nicht vorgesehen/gewünscht ist. Zeilenumbruchszeichen wie \r und \n haben in einer Email-Adresse nichts verloren. Man sollte diese Zeichen rausfiltern oder am besten beim Enthaltensein im eingegebenen Wert den Versand der Mail unterbinden, da das dann mit hoher Wahrscheinlichkeit ein Missbrauchsversuch ist.
echo "$verabschiedung $name";
Hellihello dedlfix,
na, am besten villeicht, diesen vierten Parameter ganz weglassen und die Mailadresse nur im Mail-Body aufnehmen?
Oder noch vorher htmlentities() drumpacken? Bei einer Textmail wohl nicht nötig, könnt ich mir denken, aber ich habe mir abgewöhnt, in Sicherheitsfragen zu "denken".
Dank und Gruß,
frankx
echo $begrüßung;
na, am besten villeicht, diesen vierten Parameter ganz weglassen und die Mailadresse nur im Mail-Body aufnehmen?
Was am besten ist, kommt auf die Aufgabenstellung an. Möchte man aber die eingegebene Email-Adresse als Absender verwenden, sollte man sie die nötigen Vorsichtsmaßnahmen/Prüfungen nicht außer acht lassen.
Oder noch vorher htmlentities() drumpacken? Bei einer Textmail wohl nicht nötig, [...]
Für HTML-Entities interessiert sich nur ein HTML-verarbeitendes Programm. Ein Mail-Server interessiert sich nicht dafür. Und Zeilenumbrüche werden auch nicht von htmlentities() berücksichtigt. Diese Funktion ist also hier ungeeignet.
echo "$verabschiedung $name";
Hellihello dedlfix,
Für HTML-Entities interessiert sich nur ein HTML-verarbeitendes Programm. Ein Mail-Server interessiert sich nicht dafür. Und Zeilenumbrüche werden auch nicht von htmlentities() berücksichtigt. Diese Funktion ist also hier ungeeignet.
Wie wahr, wie gesagt, ich hatte nicht gedacht (;-).
Dank und Gruß,
frankx