Avatar billede playr Nybegynder
05. august 2007 - 02:21 Der er 7 kommentarer

Laver ikke "Danske bogstaver" via email-form?

Hej alle

Når jeg sender gennem min form2mail (jeg selv har lavet) så får jeg alle informationerne, men den laver ø om til ø og andre mærkelige ting, hvordan får jeg denne til at lave Æ, Ø og Å?

Eller alternativt, hvordan laver jeg således at den bytter ud med følgende:

Æ = AE
Ø = OE
Å = AA

På forhånd tak
Avatar billede mstorgaard Praktikant
05. august 2007 - 02:32 #1
Du skal nok benytte en str_replace();
Fx
function replace($str) {
  $org = array('æ', 'Æ', 'ø', 'Ø', 'å', 'Å');
  $new = array('ae', 'AE', 'oe', 'OE', 'aa', 'AA');
  $str = str_replace($org, $new, $str);
  return $str;
}
Avatar billede mstorgaard Praktikant
05. august 2007 - 02:33 #2
Selvom jeg nok ville anbefale den her løsning:
function replace($str) {
  $org = array('æ', 'Æ', 'ø', 'Ø', 'å', 'Å');
  $new = array('æ', 'Æ', 'ø', 'Ø', 'å', 'Å');
  $str = str_replace($org, $new, $str);
  return $str;
}
Avatar billede jakobdo Ekspert
05. august 2007 - 07:53 #3
Hvilken character encoding bruger du på din email-form?
Avatar billede olebole Juniormester
05. august 2007 - 13:31 #4
<ole>

mstorgaard >> Din anden løsning er direkte forkert - med mindre der er tale om en HTML-formateret e-mail  =)

playr >> Du kan også bruge PHP's streng-oversætter funktion, som er beregnet til netop den slags:
    http://dk2.php.net/manual/en/function.strtr.php

- men jakobdo er iøvrigt igang med den helt rigtige løsning. At bytte ud til den slags 'ligaturer' er en panikløsning ... at bruge et passende tegnsæt er den rigtige løsning. Det er også interessant, hvilket tegnsæt, du bruger i din e-mail afsending  ;o)

/mvh
</bole>
Avatar billede playr Nybegynder
06. august 2007 - 14:27 #5
Jeg bruger

<!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">

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
Avatar billede jakobdo Ekspert
06. august 2007 - 17:15 #6
Jeg vil gætte på du så skal lave:
$nyemail = utf8_decode($email);
Avatar billede playr Nybegynder
16. august 2007 - 12:24 #7
jakobda, hvor skal det stå? Der står jo:

mail("$dinEmail", "Kontakt fra $_POST[navn]......
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester