Avatar billede packo Nybegynder
20. december 2009 - 16:44 Der er 7 kommentarer og
1 løsning

Simpel PHP-mailformular mangler æ, ø, å-visning

Hejsa Eksperter,

jeg fandt en sourcecode på nettet, som jeg skal bruge til en bestillingsformular på nettet. Det er en simpel kontakt-formular, som sender en mail. Jeg har dog det problem, at hvis man skriver æ, ø eller å i formularen, vises et ?-tegn i mailen.

Jeg har ingen forstand på PHP-programmering, så hvis jeg kunne blive hjulpet på vej til en løsning vil jeg blive meget taknemlig. Koden kan ses herunder. (Jeg har selv tilpasset lidt i den, så den passer til mine behov, men jeg ved ikke, hvordan jeg skal løse problemet).



<table width="100%" border="0" cellpadding="0" cellspacing="0">
  <tr>
    <td height="50%" align="center"> <form name="mail" method="post" action="<? echo $PHP_SELF ?>" onSubmit="return CheckForm();" onReset="return confirm('Er du sikker på at du vil slette alt?');">
        <table width="250" border="0" cellpadding="0" cellspacing="2" class="tabel">
          <tr>
            <td align="right" valign="top">Navn:&nbsp;</td>
            <td><input name="navn" type="text" class="input" size="30"></td>
          </tr>
          <tr>
            <td height="18" align="right" valign="top">E-mail:&nbsp;</td>
            <td><input name="mail" type="text" class="input" size="30"></td>
          </tr>
          <tr>
            <td height="18" align="right" valign="top">Tlf. nr.:&nbsp;</td>
            <td><input name="tlf" type="text" class="input" size="30" maxlength="8"></td>
          </tr>
          <tr>
            <td align="right" valign="top">Emne:&nbsp;</td>
            <td><input name="emne" type="text" class="input" size="30"></td>
          </tr>
          <tr>
            <td align="right" valign="top">Besked:&nbsp;</td>
            <td><textarea name="besked" cols="29" rows="8" class="textarea"></textarea></td>
          </tr>
          <tr>
            <td>&nbsp;</td>
            <td align="center"> <input name="Submit" type="submit" class="button" value="Send">
              &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input name="Submit2" type="reset" class="button" value="Reset">
            </td>
          </tr>
        </table>
      </form></td>
  </tr>
  <tr>
    <td align="center">&nbsp; </td>
  </tr>
  <tr>
    <td align="center">
      <?
    $mail = $_POST["mail"];
    $headers = "From: " . $_POST["mail"];
    $besked = $_POST["besked"];
    $navn = $_POST["navn"];
    $tlf = $_POST["tlf"];
    $emne = $_POST["emne"];
    $til = "rene@rhserviceudlejning.dk";
    $besked2 = "Mailen er skrevet af: " . $navn . "\n\nTelefon nr.: " . $tlf . "\n\n" . $besked;

    if ($mail && $besked && $navn && $tlf) {
        if (mail($til, $emne, $besked2, $headers)) {
            echo "Din mail er blevet sendt - tak!";
        }

        else {
            echo "Der opstod en fejl... mailen er ikke blevet sendt!";
        }
    }
?>
    </td>
  </tr>
</table>
Avatar billede plazm Nybegynder
20. december 2009 - 16:58 #1
Problemet lige i det tegnsæt du bruger på din side ikke er det samme som mailen bliver betragtet som. Hvilket tegnsæt bruger du på din side?
Avatar billede packo Nybegynder
20. december 2009 - 17:27 #2
Mit meta ser ud som følger:

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
Avatar billede packo Nybegynder
20. december 2009 - 17:29 #3
Jeg er ikke sikker på, jeg aflæser det rigtige sted. Hjemmesiden er www.pixel-factory.dk/rh/ og så er det siden "Bestilling".

Jeg bruger iframe og er derfor ikke sikker på, jeg skal læse tegnsættet fra index.html-filen.
Avatar billede nissen2630 Novice
20. december 2009 - 17:37 #4
Du mangler bla. DOCTYPE på din side.
Tilføj :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

Og se på følgende link...Der er lidt fejl:-)

http://validator.w3.org/check?uri=http%3A%2F%2Fwww.pixel-factory.dk%2Frh%2F&charset=%28detect+automatically%29&doctype=Inline&group=0
Avatar billede packo Nybegynder
20. december 2009 - 18:00 #5
Tak, det må jeg lige få set på.

Jeg kan se, at æ, ø og å virker fint, når formularen peger på min mail. Det må være ham jeg laver hjemmesiden til, hvis mail-program, der ikke er up to date.

Jeg takker for din tid :-)
Avatar billede nissen2630 Novice
20. december 2009 - 18:18 #6
Ville også udskifte :
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
med :
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
Avatar billede packo Nybegynder
05. april 2010 - 12:56 #7
Lukket
Avatar billede nissen2630 Novice
10. april 2010 - 10:19 #8
Og løsningen var ???
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