Beste lezers,

Ik ben nieuw op de dit forum en beginner met php en heb een hoop leuke en handige dingen gevonden op deze site. Bedankt daarvoor!!!

Nu hoop ik dat iemand mij even op weg kan helpen met mijn probleem.

Ik heb een script voor het aanmelden van een nieuwsbrief. Ik krijg het werkend en ontvang ook de mail hiervan.
Nu zou ik graag willen dat de afzender van de email wordt gewijzigd naar diegene die de mail verstuurd. Momenteel krijg ik als afzender webmaster@www.domein.nl

Dit is het script:
<?php
if (isset($_POST['actie'])) {
$emailadres = $_POST['e'];
$emailadres = strip_tags($emailadres);
$emailadres = trim($emailadres);
require_once('is_email.inc.php');
if (is_email($emailadres)) {
$actie = $_POST['actie'];
if ($actie === "Aanmelden" or $actie === "Afmelden") {
if ($actie == "Aanmelden") {
$onderwerp = "Nieuwe abonnee nieuwsbrief toevoegen";
$bericht = "Voeg dit e-mailadres toe: " . $emailadres;
$melding = "Uw e-mailadres <strong>$emailadres</strong> is toegevoegd en u ontvangt het eerstvolgende nummer van onze nieuwsbrief. ";
$melding .= "U kunt uw abonnement op elk gewenst moment opzeggen door uw e-mailadres in te voeren en op Afmelden te klikken. ";
}
if ($actie == "Afmelden") {
$onderwerp = "Abonnee nieuwsbrief verwijderen";
$bericht = "Verwijder dit e-mailadres: " . $emailadres;
$melding = "Uw e-mailadres <strong>$emailadres</strong> is verwijderd. ";
$melding .= "U kunt zich opnieuw abonneren op onze nieuwsbrief door een e-mailadres in te voeren en op Aanmelden te klikken. ";
}
define("NEWSMASTER", "[email protected]");
$headers = "From: webmaster@" . $_SERVER['SERVER_NAME'] . "\r\n";
if (mail(NEWSMASTER, $onderwerp, $bericht, $headers)) {
$emailadres = "";
} else {
$melding = "Er is een onbekende fout opgetreden. ";
$melding .= "Controleer het e-mailadres <strong>$emailadres</strong> of probeer het later nog een keer. ";
}
} else {
$emailadres = htmlentities($emailadres, ENT_QUOTES);
$melding = 'Er is een onbekende fout opgetreden. ';
$melding .= 'Controleer het e-mailadres en klik op Aanmelden of Afmelden. ';
}
} else {
$emailadres = htmlentities($emailadres, ENT_QUOTES);
if (strlen($emailadres) < 1) {
$melding = "U moet een <strong>e-mailadres</strong> invoeren. ";
} else {
$melding = "<strong>$emailadres</strong> is geen geldig e-mailadres. ";
$melding .= "Verbeter het e-mailadres of voer een ander e-mailadres in. ";
}
}
} else {
$emailadres = "";
$melding = "Voer uw e-mailadres in en klik op Aanmelden als u zich wilt abonneren op onze nieuwsbrief. ";
$melding .= "U kunt uw abonnement op elk moment opzeggen door uw e-mailadres in te voeren en op Afmelden te klikken. ";
}

include('header.inc');
?>
<h1>Nieuwsbrief</h1>
<p><?php echo $melding; ?></p>
<form action="nieuwsbrief1.php" method="post">
<table border="0" cellpadding="0" cellspacing="2">
<tr>
<td nowrap><label for="e"><span style="text-decoration: underline">E</span>-mailadres:</label></td>
</tr>
<tr>
<td><input accesskey="e" id="e" name="e" size="30" type="text" value="<?php echo $emailadres; ?>"></td>
</tr>
<tr>
<td nowrap>
<input name="actie" type="submit" value="Aanmelden">
<input name="actie" type="submit" value="Afmelden">
</td>
</tr>
</table>
</form>
<?php include('footer.inc'); ?>
Hier moet je wezen:


<?php

$headers = "From: webmaster@" . $_SERVER['SERVER_NAME'] . "\r\n";

?>
ik had webmaster@" . $_SERVER['SERVER_NAME'] . gewijzigd naar $email = ""

Maar dat accepteerde hij niet. Wat moet ik dan invullen voor het email adres van de abonnee?
Ik denk dat je een denkfout maakt. Iemand meldt zich aan voor een nieuwsbrief. Moet die dan een e-mail krijgen met zichzelf als afzender? Lijkt me niet logisch.
Nee dat is niet de bedoeling. Ik krijg de mail binnen met het onderwerp "abonnee toevoegen".
Alleen is de afzender van de mail die ik ontvang "webmaster@www.domein.nl";

Deze wil ik graag wijzigen in het email adres van diegen die zich aanmeld.

Inderdaad, je moet er gewoon je eigen email-adres invullen ;) !

<?php

$headers = "From: " . $emailadres . "\r\n";

?> 


Zo dan maar?
Hij blijft webmaster@www.domein.nl aangeven als afzender.


Ponzi schreef op 26.08.2006 21:42
Inderdaad, je moet er gewoon je eigen email-adres invullen ;) !

Je moet het als een formulier dat je invult. Als je dat ontvangt staat er toch ook het adres van diegene die het heeft verstuurt!?
hij werkt, mijn dank is groot!
<?php

$headers = "From: <naam> " . $emailadres . "\r\n";

?>

nu is de afzender niet meer het e-mail adres, maar ' naam'

dit kun je dus ook veranderen in 'Mijn website' o.i.d.

Reageren