Opmaak in e-mail via php

Status
Niet open voor verdere reacties.

Ewergreen

Gebruiker
Lid geworden
15 mrt 2008
Berichten
273
PHP:
<? 
if(!empty($_POST['Submit']))
{ 
if(strlen($_POST['name']) == 0)
    { $error_msg ="- Voer astublieft uw naam in.<br>"; } 
if(!ereg("^[_a-zA-Z0-9-]+(\.[*@([a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$", $_POST['uwemail']))
    { $error_msg .="- Voer astublieft een geldig email adres in.<br>"; } 
if(strlen($_POST['field']) ==0)
    { $error_msg .="- Laat alstublieft weten wat u ons wenst te vragen.<br>"; } 
    
if(!empty($error_msg))
    { 
    //Een van de velden werd niet goed ingevuld 
    echo "<b>Contact webmaster kon niet worden uitgevoerd door volgende redenen:</b><br><br>"; 
    echo $error_msg; 
    echo "<br>Klik alstublieft op <a href=javascript:history.back(1)>Ga terug</a> en vul alle velden in.<br><br>"; 
    }
else 
    { 
    $recipient = "Ik@mezelf.notgoingtogivethisaway.heyhey"; //Het email adres van de persoon die vragen moet ontvangen. 
    $subject = $_POST['sub']; //Subject van de mail. 
    $mail = $_POST['uwemail']; 
	$naam= $_POST['name'];

    $mail_body = "Op " . date("d-m-Y") . " om " . date("H:i") . " vulde <b>$naam</b> met e-mail adres:" . "<b>" . "$mail" . "</b> het contactformulier in.\n\n"; 
    $mail_body .= "<u>Bericht:</u>\n"; 
    $mail_body .= $_POST['field']; 
    $mail_body .= "\n\n -- Einde van het contact bericht --"; 
    mail($recipient, $subject, $mail_body); 
    echo "<b>Beste $naam, uw bericht is succesvol verzonden</b><br>Er zal zo spoedig mogelijk contact met u opgenomen worden.</b><br>"; 
    echo "<a class=\"main\" href='javascript:history.back(1)'>Ga terug</a>"; 
    }
} 
else 
{ 
?>

Dit stukje scipt heb ik ergens gevonden en ondertussen volledig aangepast naar mijn noden. Nu werkt er helaas één dingetje niet. Ik wil graag mijn titels onderlijnd hebben en de belangrijkste woorden in het vet. Als ik er eentje weet, lukt de rest ook wel!

PHP:
    $mail_body = " ik <b>$naam</b> \n\n";

Hoe krijg ik dit stukje dus wél in het bold?
 
Door de mail als HTML te sturen. Zie 'html mail php' op Google. Als je écht goed mails wilt versturen, moet je kijken naar SwiftMailer.


Checken of een formulier gestuurd is doe je overigens met if($_SERVER['REQUEST_METHOD']) == 'POST'. Verder is ereg() verouderd, je kunt beter preg_* gebruiken.
 
SvU, bedankt voor de uitleg. Ik heb alles i.v.m. html mailen even nagelezen, maar het leek me wat complex voor wat het is. Geen html dus in deze mail.

De preg heb ik even geprobeerd, maar dit wou niet meteen werken. Dat lees ik vanavond thuis nog wel even na.
 
Om je mail als HTML te versturen kan je volgende meesturen als extra mailheader:
Code:
Content-type: text/html; charset=utf-8\r\n

Indien je echter aan het serieuzere emailwerk komt, is een mailerclass als SwiftMailer op zijn plaats. Deze neemt heel wat van het programmeerwerk voor je uit handen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan