Avatar billede Morten Professor
02. december 2015 - 20:21 Der er 5 kommentarer og
1 løsning

Mailform Kan ikke få det vist rigtigt

Hej Eksperter

Nu har jeg simpelhen prøvet alt muligt.

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";

Ellers er der noget galt i min kodning:


<?php
if(isset($_POST['submit'])){
// multiple recipients
$to  = 'test@flueopskrifter.dk' . ', '; // note the comma
$to .= '' . $_POST['email'] . '';

// subject
$subject = 'Skarvens fluebiks';

// message
$message = '
<html>
<head>
  <title>Skarvens fluebiks</title>
</head>
<body>
<center><div style="font-size:16px;">Bestilling</div></center>
<link rel="stylesheet" type="text/css" href="http://www.webshop.flueopskrifter.dk/design/styles.css"/>
    <table style="style="width:96%; background-image:url(http://www.webshop.flueopskrifter.dk/design/media/baggrund.png);" class="shadow" width="100%" border="0" cellspacing="0" cellpadding="2">
      <tr>
        <td colspan="4" bgcolor="#CCCCCC"><img width="100%" src="http://www.webshop.flueopskrifter.dk/mobil_tablet_pc/media/banner/skarvens_fluebiks.png" longdesc="http://www.webshop.flueopskrifter.dk/mobil_tablet_pc/media/banner/skarvens_fluebiks.png" /></td>
        </tr>
      <tr>
        <td style="background-image:url(http://www.webshop.flueopskrifter.dk/design/media/menubar_baggrund.png)" width="160" rowspan="10">&nbsp;</td>
        <td colspan="2"><div style="font-size:20px; font-weight:bold; text-align:center;">Bestilling</div></td>
        <td style="background-image:url(http://www.webshop.flueopskrifter.dk/design/media/menubar_baggrund.png)" width="160" rowspan="10">&nbsp;</td>
      </tr>
      <tr>
        <td width="17%" bgcolor="#CCCCCC">Navn:</td>
        <td width="35%" bgcolor="#CCCCCC">' . $_POST['navn'] . '</td>
        </tr>
      <tr>
        <td bgcolor="#FFFFFF">Efternavn:</td>
        <td bgcolor="#FFFFFF">' . $_POST['efternavn'] . '</td>
        </tr>
      <tr>
        <td bgcolor="#CCCCCC">Adresse:</td>
        <td bgcolor="#CCCCCC">' . $_POST['adresse'] . '</td>
        </tr>
      <tr>
        <td bgcolor="#FFFFFF">Post nr.</td>
        <td bgcolor="#FFFFFF">' . $_POST['postnr'] . '</td>
        </tr>
      <tr>
        <td bgcolor="#CCCCCC">By:</td>
        <td bgcolor="#CCCCCC">' . $_POST['by'] . '</td>
        </tr>
      <tr>
        <td bgcolor="#FFFFFF">Kontakt nr.</td>
        <td bgcolor="#FFFFFF">' . $_POST['kontaktnr'] . '</td>
        </tr>
      <tr>
        <td bgcolor="#CCCCCC">E-mail:</td>
        <td bgcolor="#CCCCCC">' . $_POST['email'] . '</td>
        </tr>
      <tr>
        <td valign="top" bgcolor="#FFFFFF">Bestilling:</td>
        <td height="200" valign="top" bgcolor="#FFFFFF">' . $_POST['varenr'] . '</td>
        </tr>
      <tr>
        <td bgcolor="#CCCCCC">Note til forhandler:</td>
        <td bgcolor="#CCCCCC">' . $_POST['besked'] . '</td>
        </tr>
    </table>
</body>
</html>
';

// To send HTML mail, the Content-type header must be set
$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
// Additional headers
$headers .= 'To: ' . $_POST['navn'] . ' ' . $_POST['efternavn'] .'<'. $_POST['email'] . '>' . "\r\n";
$headers .= 'From: "Skarvens fluebiks" <webshop@flueopskrifter.dk>' . "\r\n";

// Mail it
$status = mail($to, $subject, $message, $headers);
$msg = ($status)? "Tak for din bestilling.<br />
Vi vil svarer inden for 24 timer." : "Fejl i afsendelse af mail";
echo $msg; 
}

?>



Det er virker ikke optimalt, på mail modtager kunden det i tekst, selvom de har slået html til i mail programmet.
Det virker fint på nettet med mobil, men ikke i igennem computeren.

Er der noget jeg kan gøre har prøvet at snakke med nogen her inde og de kunne godt se det rigtigt når de har gjort det fra deres server.

Med venlig hilsen
Morten
Avatar billede jakobdo Ekspert
03. december 2015 - 08:53 #1
Prøv at lav en simpel test:

$to = 'DIN@EMAIL.DK';

$subject = 'HTML Test';

$headers = "From: " . strip_tags($_POST['req-email']) . "\r\n";
$headers .= "Reply-To: ". strip_tags($_POST['req-email']) . "\r\n";
$headers .= "CC: susan@example.com\r\n";
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";

$message = '<html><body>';
$message .= '<h1>Hello, World!</h1>';
$message .= '</body></html>';

mail($to, $subject, $message, $headers);

Får du en html email eller en plain text ?
Avatar billede Morten Professor
03. december 2015 - 10:02 #2
Så har jeg fået testet.
Den kommer med tekst man kan se alle koderne.
Avatar billede jakobdo Ekspert
03. december 2015 - 10:46 #3
Prøv evt. at ret \r\n til \n og se om det gør en forskel ?
Avatar billede Morten Professor
03. december 2015 - 11:00 #4
Jubii nu virker det. :o)
Rettede til kun \n
Yes mand Nu har jeg prøvet at nørkle med det i langtid :o)

Vil du smide et svar så du kan få dine point :o)

Med venlig hilsen
Morten
Avatar billede jakobdo Ekspert
03. december 2015 - 11:01 #5
Svar!
Avatar billede jakobdo Ekspert
03. december 2015 - 11:34 #6
Takker for point. :)
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