Problemet är att snubben som får ta emot eposten får specialtecken (å ä ö) felvisade. Kan jag på något sätt berätta för den server som skickar eposten till nämnda person att den skall kodas i utf-8 (eller annan kodning) och i så fall hur. Jag talar inte om någon html-header alltså, det måste vara något annat.
tacksam för hjälp
/Thomas
Epost/kontaktformulär i Php - bestämma kodning i mail som skickas?
- omnius
- Inlägg: 272
- Blev medlem: 30 jan 2007, 12:38
- OS: Annat GNU/Linux
- Utgåva: Vet inte/ingen utgåva passar
- Ort: Gnesta
Epost/kontaktformulär i Php - bestämma kodning i mail som skickas?
Strength in the arm, truth in the heart, honesty in speech
SV: Epost/kontaktformulär i Php - bestämma kodning i mail som skickas?
Det blir inte så lätt... Kan du prova det här?
<?php
...
$charset='UTF-8';
$subject='Subject med extra chars: åäöÅÄÖ';
$encoded_subject="=?$charset?B?".base64_encode($subject)."?=\n";
$to=mail@peter.se;
$body='Detta är body';
$headers="From: ".$from."\n"
. "Content-Type: text/plain; charset=$charset; format=flowed\n"
. "MIME-Version: 1.0\n"
. "Content-Transfer-Encoding: 8bit\n"
. "X-Mailer: PHP\n";
mail($to,$encoded_subject, $body,$headers);
?>
<?php
...
$charset='UTF-8';
$subject='Subject med extra chars: åäöÅÄÖ';
$encoded_subject="=?$charset?B?".base64_encode($subject)."?=\n";
$to=mail@peter.se;
$body='Detta är body';
$headers="From: ".$from."\n"
. "Content-Type: text/plain; charset=$charset; format=flowed\n"
. "MIME-Version: 1.0\n"
. "Content-Transfer-Encoding: 8bit\n"
. "X-Mailer: PHP\n";
mail($to,$encoded_subject, $body,$headers);
?>
- omnius
- Inlägg: 272
- Blev medlem: 30 jan 2007, 12:38
- OS: Annat GNU/Linux
- Utgåva: Vet inte/ingen utgåva passar
- Ort: Gnesta
SV: Epost/kontaktformulär i Php - bestämma kodning i mail som skickas?
you da man 
ska testa och se hur det går
/Thomas

ska testa och se hur det går
/Thomas
Strength in the arm, truth in the heart, honesty in speech
- omnius
- Inlägg: 272
- Blev medlem: 30 jan 2007, 12:38
- OS: Annat GNU/Linux
- Utgåva: Vet inte/ingen utgåva passar
- Ort: Gnesta
SV: Epost/kontaktformulär i Php - bestämma kodning i mail som skickas?
Det verkar funka bra Little John. Tack så mycket för hjälpen, har lärt mig något nytt nu. Ska inte ropa hej iofs eftersom jag inte fått reda på ännu hur det ser ut hos snubben som det skickas till, men jag har stora förhoppningar
/Thomas
/Thomas
Strength in the arm, truth in the heart, honesty in speech
- omnius
- Inlägg: 272
- Blev medlem: 30 jan 2007, 12:38
- OS: Annat GNU/Linux
- Utgåva: Vet inte/ingen utgåva passar
- Ort: Gnesta
SV: Epost/kontaktformulär i Php - bestämma kodning i mail som skickas?
Ok LJ
Det blev inte så bra, ska visa hur jag gjort scriptet:
och själva formuläret på webbsidan ser ut på följande sätt:
output till snubben blir fortfarande tokigt.... Det blir inga problem när det skickas till mig. Vad jag än gör så blir det fel med specialtecken hos honom. Frågan jag ställer mig, ligger problemet hos hans mailserver, mailklient eller nåt. Vet inte vad hans epost-server kör för OS, själv använder han MS Outlook som klient. Finns det något mer jag kan göra från mitt håll. Kan väl testa att köra iso-8859-1 antar jag, har inte gjort det med din scriptningshjälp, så jag kan testa det. Ser du något tokigt i koden som kan göras otokigt?
/Thomas
Det blev inte så bra, ska visa hur jag gjort scriptet:
Kod: Markera allt
<?php
$charset='utf-8';
$subject = "Webbformulär easygreen.se";
$encoded_subject="=?$charset?B?".base64_encode($subject)."?=\n";
$to = "info@easygreen.se";
$to = "info@algis.se";
$Epost = Trim(stripslashes($_POST['Epost']));
$Namn = Trim(stripslashes($_POST['Namn']));
$Co = Trim(stripslashes($_POST['Co']));
$whatever = Trim(stripslashes($_POST['whatever']));
// validering
$validationOK=true;
if (Trim($Namn)=="") $validationOK=false;
if (Trim($Epost)=="") $validationOK=false;
if (!$validationOK) {
print "<meta http-equiv=\"refresh\" content=\"0;URL=error.html\">";
exit;
}
//Header
$headers="From: ".$Epost."<".$Namn.">"."\n"
."Reply-To: ".$Namn."<".$Epost.">"."\n"
."Return-Path: ".$Namn."<".$Epost.">"."\n"
."Message-ID: <".time()."-".$Epost.">"."\n"
."content-type: text/plain; charset=$charset; format=flowed"."\n"
."MIME-Version: 1.0\n"
."Content-Transfer-Encoding: 8bit\n"
."X-Mailer: PHP\n";
// body epost
$Body .= "Företag: ";
$Body .= $Co;
$Body .= "\n";
$Body .= "Ärende :";
$Body .= "\n";
$Body .= $whatever;
$Body .= "\n";
// skicka eposten
$success = mail($to, $encoded_subject, $Body, $headers);
// om lyckat
if ($success){
print "<meta http-equiv=\"refresh\" content=\"0;URL=ok.html\">";
}
else{
print "<meta http-equiv=\"refresh\" content=\"0;URL=error.html\">";
}
?>
Kod: Markera allt
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="sv" lang="sv">
<head>
<title>Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<div id="sidecontent"><form method="post" action="rapport.php">
<div class="contact"></div><br />
<p>E-post:(obligatoriskt)<br /><input type="text" name="Epost" class="text" /></p>
<p>Namn:(obligatoriskt)<br /><input type="text" name="Namn" class="text" /></p>
<p>Företag:<br /><input type="text" name="Co" class="text" /></p>
<p>Ärende:</p>
<textarea name="whatever" class="textarea"></textarea>
<br /><br />
<input type="submit" name="submit" value="Skicka!" />
<input type="reset" name="reset" value="Rensa och börja om!" />
</div><!-- /sidecontent -->
</body>
</html>
/Thomas
Strength in the arm, truth in the heart, honesty in speech
SV: Epost/kontaktformulär i Php - bestämma kodning i mail som skickas?
Hej!
Du kan väl prova med iso-8859-1.
Jag har för mig att jag var tvungen att ställa om kodning i outlook
i min frus gamla XP dator till UTF8, när det kom in mail ifrån min
Ubuntu maskin....
I din kod ser jag ingen fel, men jag är ju ingen specialist på php.
Kanske någon annan vet mer här ?
LJ
Du kan väl prova med iso-8859-1.
Jag har för mig att jag var tvungen att ställa om kodning i outlook
i min frus gamla XP dator till UTF8, när det kom in mail ifrån min
Ubuntu maskin....
I din kod ser jag ingen fel, men jag är ju ingen specialist på php.
Kanske någon annan vet mer här ?
LJ
- omnius
- Inlägg: 272
- Blev medlem: 30 jan 2007, 12:38
- OS: Annat GNU/Linux
- Utgåva: Vet inte/ingen utgåva passar
- Ort: Gnesta
SV: Epost/kontaktformulär i Php - bestämma kodning i mail som skickas?
nu blir det fel när det kommer till mig istället, vilket torde betyda att det blir rätt när det kommer till den andra snubben. Om det är så, kan man ju räkna denna förfrågan som avklarad (blir det jag som markerar detta eller är det någon moderator?)
tack för hjälpen med förhoppning om att inte behöva ställa en till fråga i samma ärende
/Thomas Johansson
tack för hjälpen med förhoppning om att inte behöva ställa en till fråga i samma ärende
/Thomas Johansson
Strength in the arm, truth in the heart, honesty in speech