waar ß in het vetgedrukt staat moet eigenlijk de ascii-code staan, dit forum zet ze vanzelf om naar het teken 
Ik gebruik volgende functie om gepersonaliseerde mails (de gegevens komen uit een databank) te sturen vanaf mijn site, dit werkt perfect zolang er geen speciale tekens in de naam, het onderwerp,.. zitten.
Als voorbeeld heb ik een onderwerp: "stoßen" , wanneer de ß zo in de databank zit, dan wil hij de mail niet versturen. Als ik de ß in de databank steek als ascii-code dan wordt de mail wél verstuurd en staat het ß-teken ook juist in de mail zelf, maar niet in het onderwerp, daar krijg ik "Stoßen" te zien.
Ik dacht, ik probeer eens met het als ascii-code in de databank zetten, en dan eerst omzetten naar het teken (
maar dan wordt de mail weer gewoon niet verstuurd.
Ik zoek eigenlijk een manier om dit werkende te krijgen zonder dat ik in de databank de ascii-code moet hebben staan, want ze staan al gewoon als teken in de databank staan.

Ik gebruik volgende functie om gepersonaliseerde mails (de gegevens komen uit een databank) te sturen vanaf mijn site, dit werkt perfect zolang er geen speciale tekens in de naam, het onderwerp,.. zitten.
Als voorbeeld heb ik een onderwerp: "stoßen" , wanneer de ß zo in de databank zit, dan wil hij de mail niet versturen. Als ik de ß in de databank steek als ascii-code dan wordt de mail wél verstuurd en staat het ß-teken ook juist in de mail zelf, maar niet in het onderwerp, daar krijg ik "Stoßen" te zien.
Ik dacht, ik probeer eens met het als ascii-code in de databank zetten, en dan eerst omzetten naar het teken (
Code:
$string = str_replace("[B]ß[/B]", "ß", $string);
Ik zoek eigenlijk een manier om dit werkende te krijgen zonder dat ik in de databank de ascii-code moet hebben staan, want ze staan al gewoon als teken in de databank staan.
Code:
function protectMailHeaders($string)
{
$string = str_replace("\n", "", $string); // Verwijder \n
$string = str_replace("\r", "", $string); // Verwijder \r
$string = str_replace("\t", "", $string); // Verwijder \t
$string = str_replace("[B]ß[/B]", "ß", $string);
//$string = str_replace("\"", "\\\"", str_replace("\\", "\\\\", $string)); // Slashes van quotes
return $string;
}
function jnmmail($naaremail,$naarvoornaam,$naarachternaam,$vanemail,$vannaam,$onderwerp,$bericht,$verzonden){
$naaremail = protectMailHeaders($naaremail);
$naarvoornaam = protectMailHeaders($naarvoornaam);
$naarachternaam = protectMailHeaders($naarachternaam);
$vanemail = protectMailHeaders($vanemail);
$vannaam = protectMailHeaders($vannaam);
$onderwerp = protectMailHeaders($onderwerp);
$bericht = str_replace("http://","hatetepedubbelslashslash",$bericht);
$bericht = protectMailHeaders(str_replace(":",":",$bericht));
$bericht = str_replace("hatetepedubbelslashslash","http://",$bericht);
/* test($naaremail);
test($naarvoornaam);
test($naarachternaam);
test($vanemail);
test($vannaam);
test($onderwerp);
*/
if(valid_email($naaremail) && valid_email($vanemail) && ctype_print($vanemail) && ctype_print($onderwerp) && ctype_print($naaremail) && ctype_print($naarvoornaam) && (ctype_print($naarachternaam) || $naarachternaam=="") && ctype_print($vannaam) && ctype_print($bericht)){
$bericht = '
<html>
<head>
<title>'.$onderwerp.'</title>
<style type="text/css">
body {
background-color: #F5F5EB;
font-family: Arial, Helvetica, Verdana, sans-serif;
color: #FFFFFF;
line-height: 15pt;
}
h2{
font-weight:bold;
font-size:14pt;
color:#3A9300;
text-align:center;
}
.maillink a:visited,.maillink a:active,.maillink a:link {
color:#3A9300;
text-decoration:none;
}
.maillink a:hover {
color:#E38025;
text-decoration:none;
}
p{
margin:0;
padding:0;
}
</style>
</head>
<body bgcolor="#F5F5EB">
'.mailbericht($onderwerp,$bericht,$naarvoornaam,$verzonden).'
</body>
</html>
';
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
// $headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
// $headers .= 'To: '.$naarvoornaam.' '.$naarachternaam.' <'.$naaremail.'>' . "\r\n";
$headers .= 'From: '.$vannaam.' <'.$vanemail.'>' . "\r\n";
$headers .= 'X-Mailer: PHP v'.phpversion() . "\r\n" ;
$headers .= 'Reply-To: '.$vannaam.' <'.$vanemail.'>' . "\r\n";
$headers .= 'Return-Path: '.$vannaam.' <'.$vanemail.'>' . "\r\n";
$headers .= 'Message-ID: '.$vannaam.' <'.$vanemail.'>' . "\r\n";
return mail($naaremail, $onderwerp, $bericht, $headers);
}else{
return false;
}
}
Laatst bewerkt: