Hvordan ser jeg hvem der er sendt mail til?
du kunne ligge resultatet af din mail_utf8 i en variabel, som du tester på, og er det gået godt ligger du mail addressen i en database.
noget ala dette
//send mail
$sent = @mail_utf8($theiremail, $subject, $message, $Myemail);
if ($sent) {
echo "mail sendt til bruger";
// her kunne man ligge mailaddressen ind i en database, så man kan se hvem der er sendt til
exit(0);
}
else{
echo "fejl ved afsendelse af mail";
exit(1);
}
samlet eks
mail.php
<?php
// 0=fejl, 1=ok
function IsValid($email) {
return preg_match("/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$/i", $email);
}
// https://www.computerworld.dk/eksperten/spm/961816?k=7937170
function escapeAddr($addr) {
$check = preg_match('/(.*)<(.*)>/', $addr, $a);
if ($check) $addr = '=?UTF-8?B?'.base64_encode($a[1]).'?= <'.$a[2].'>';
return $addr;
}
// https://www.computerworld.dk/eksperten/spm/961816?k=7937170
function mail_utf8($to, $subject='Intet emne', $message='', $from='', $cc='', $bcc='', $type='plain') {
$from = escapeAddr($from);
$header = 'From: '.$from.PHP_EOL
. 'Return-Path: '.$from.PHP_EOL
. 'Reply-To: '.$from.PHP_EOL
. 'MIME-Version: 1.0'.PHP_EOL
. 'Content-type: text/'.$type.'; charset=UTF-8'.PHP_EOL
. 'X-Mailer: PHP/'.phpversion().PHP_EOL
. 'Content-Transfer-Encoding: 8bit'.PHP_EOL;
if ($cc!='') $header .= 'Cc: '.escapeAddr($cc).PHP_EOL;
if ($bcc!='') $header .= 'Bcc: '.escapeAddr($bcc).PHP_EOL;
$header .= PHP_EOL;
return mail($to, '=?UTF-8?B?'.base64_encode($subject).'?=', $message, $header);
}
?>
thispage.php
<?php
require_once("mail.php");
//variables
//form contents
$txtEmail=$_POST['email'];
if(! IsValid($txtEmail)){
echo "fejl i mail syntaxen";
exit(1);
}
$txtName = $txtEmail;
$txtLink = "lokalblokken.dk/content.pdf";
$Myemail="info<mail@lokalblokken.dk>";
$message ="This is your Link :\t$txtLink\n\n";
$subject = "Your Link is Here";
$theiremail = $txtName ."<".$txtEmail.">";
//send mail
$sent = @mail_utf8($theiremail, $subject, $message, $Myemail);
if ($sent) {
echo "mail sendt til bruger";
// her kunne man ligge mailaddressen ind i en database, så man kan se hvem der er sendt til
exit(0);
}
else{
echo "fejl ved afsendelse af mail"
exit(1);
}
?>
form
<!DOCTYPE html>
<html lang="da">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" >
<title>demo</title>
</head>
<body>
<form action="thispage.php" method="post">
<input type="text" name="email" value="" placeholder="Enter your address here">
<input type="submit" value="Get my file!" />
</form>
</body>
</html>