php mail met html

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Space gremlin

space gremlin

31/12/2009 15:57:00
Quote Anchor link
kan iemand misschien in mijn code zien waarom ik de html niet goed binnen krijg.

het werkt naar behoren met mijn outlook express
echter als het verstuurd word naar bijv. een hotmail account.
of microsoft exchange.

bij hotmail, laat hij het bericht zien een voegd het ook toe als html.
bij exchange begrijp ik dat er alleen maar een html bestand ontvangen word.
deze moet dan geopend worden voor de informatie

ik heb helaas geen benul welke code je moet plaatsen om het onderstaande moet weer geven hier, als vermoedelijk moet.


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
// from word uit sql gehaald

  $bodytext  ="<html><p>";

// hier komt nog een toegevoegd bodytext onder in html

// restant code betreft het probleem


$bodytext .="</p></html>";

$headers   ="Content-Type: text/html;\n";
$headers .= "From: ".$from." \r\n";  
echo "<center>Email has been send, if you did not have received an answer within 24 hours, please contact me again<BR><BR>";  
echo "<center>There is also send a copy of this email to ".$from;

mail( $to, $subject, $bodytext, $headers);
?>
[ /code]
Gewijzigd op 01/01/1970 01:00:00 door Space gremlin
 
PHP hulp

PHP hulp

24/11/2024 01:12:00
 
Joris van Rijn

Joris van Rijn

31/12/2009 16:00:00
Quote Anchor link
Kijk of je je headers goed heb staan.
http://php.net/manual/en/function.mail.php
 
Roy

roy

31/12/2009 16:02:00
Quote Anchor link
Je kan je je code tussen code tages zetten.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
[ code]<?php //hier wat php code.
// haal wel de spaties weg na de [

?>
[ /code]
Gewijzigd op 01/01/1970 01:00:00 door roy
 
Space gremlin

space gremlin

31/12/2009 16:14:00
Quote Anchor link
dat zocht ik thanks.
en van die header volgorde ik had het idee dat ik het goed had.
en heb het al meerdere malen bijv. aangepast. maar misschien zie ik het gewoon niet.
 
Space gremlin

space gremlin

01/01/2010 14:59:00
Quote Anchor link
nog even een vraagje

ik heb nu even de code alleen gebruikt van de tutorial.

het van adres laat hij in het emailtje nog niet zien.
echter vind ik dit nu nog even geen probleem, echter kan dit wel meewerken aan het probleem misschien.
Als ik dit nu verstuur naar een hotmail account welke ik wel zelf kan testen
werkt het zo als ik wil gewoon netjes direkt je html uitkomt. echter nog niet met het goede van adres.
Echter als ik dit dan stuur naar mijn adres in outlook express krijg ik daar weer de complete html code in mijn bericht.
Moet ik mij voorstellen als ik deze code goed gebruik dat dat dan niet gebeurd. of moet ik toch meer doen toevoegen.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<?
$aan
= "[email protected]"; # Hier dus een comma
// $aan .= "[email protected]" # Hier niet (dit is de laatste, vandaar);
# Dit zet je in de headers van de mail() functie
# De 'nieuwe' syntax wordt dus: mail( aan , onderwerp , bericht , headers );
// $headers = "Bcc: [email protected]\r\n"; # Voor Bcc
// $headers .= "Cc: [email protected]\r\n"; # voor Cc

$headers = "From <[email protected]>\r\n";

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

# Voor beantwoorden :
$header .= "Return-Path: <[email protected]>\r\n";
$header .= "Reply-To: <mijn@adres>\r\n";
# En deze voor de prioriteit van de mail en de phpversie
$header .= "X-Priority: 3\r\n"; # 1 voor erg belangrijk
$header .= "X-MSMail-Priority: High\r\n";
$header .= "X-Mailer: PHP/".phpversion();

$subject = "test html verzending";

$bodytext = '
<!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">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Naamloos document</title>
</head>

<body>
<p>test in html</p>
<p>&nbsp;</p>
</body>
</html>
'
;


mail( $aan, $subject, $bodytext, $headers);  


echo "email verzonden";
?>
Gewijzigd op 01/01/1970 01:00:00 door space gremlin
 
Space gremlin

space gremlin

01/01/2010 16:24:00
Quote Anchor link
het lijkt nu opgelost het is mij niet helemaal duidelijk wat ik aan gepast heb. maar ik vermoed het volgende

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
$headers  = 'MIME-Version: 1.0' . "\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";


zo ie zo is er een verschil in het volgende , alleen weet ik niet of dit invloed heeft op andere email ontvangers. het is nog niet getest op exchange ontvangen

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$headers  = 'MIME-Version: 1.0' . "\n";


hier heb ik de \r\n vervangen door \n icm met de 2de header toegevoegd.
deze had ik eerst niet, omdat dit niet werkte op 1 of andere manier.

ik moet alleen nog even mijn from op de goede plaats zetten want die is niet zichtbaar, maar dat moet wel gaan lukken.
 
- SanThe -

- SanThe -

01/01/2010 16:35:00
Quote Anchor link
Misschien PHP_EOL gebruiken in plaats van "\r\n".
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.