html mail versturen geeft geen html weer (zoiets)

Status
Niet open voor verdere reacties.

JeroenE

Terugkerende gebruiker
Lid geworden
20 mrt 2005
Berichten
1.950
Als ik het volgende voorbeeld gebruik van http://be2.php.net/manual/en/function.mail.php , krijg ik in de mail de volledige html te zien. Hoe komt dat?

PHP:
<?php
// multiple recipients
$to  = 'aidan@example.com' . ', '; // note the comma
$to .= 'wez@example.com';

// subject
$subject = 'Birthday Reminders for August';

// message
$message = '
<html>
<head>
  <title>Birthday Reminders for August</title>
</head>
<body>
  <p>Here are the birthdays upcoming in August!</p>
  <table>
    <tr>
      <th>Person</th><th>Day</th><th>Month</th><th>Year</th>
    </tr>
    <tr>
      <td>Joe</td><td>3rd</td><td>August</td><td>1970</td>
    </tr>
    <tr>
      <td>Sally</td><td>17th</td><td>August</td><td>1973</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: Mary <mary@example.com>, Kelly <kelly@example.com>' . "\r\n";
$headers .= 'From: Birthday Reminder <birthday@example.com>' . "\r\n";
$headers .= 'Cc: birthdayarchive@example.com' . "\r\n";
$headers .= 'Bcc: birthdaycheck@example.com' . "\r\n";

// Mail it
mail($to, $subject, $message, $headers);
?>
Het eigenaardige is dat het vroeger gewerkt heeft, en nu, zonder wijzigingen, niet meer...
 
Laatst bewerkt:
Dit is ondertussen opgelost. Ik had in de mail() de headers eens verwijderd en niet terug geplaatst.
Het probleem stelt zich echter wel op een pagina die een bestelling moet doorsturen.
PHP:
			$smailbody = "<html><head><title>Bestelling bij " . $_POST["leverancier"] . "</title><link href='[csslink].css' rel='stylesheet' type='text/css'></head><body>";
				$sbestelling = "<form>";
				$abestelling = array();
				$nart = 0;
				for ($ni = 0; $ni < $nproducten; $ni++) {
					if ($_POST["aantal" . $ni] > 0) {
						$abestelling[$nart]["artikelnummer"] = htmlspecialchars($_POST["artikelnummer" . $ni], ENT_QUOTES);
						$abestelling[$nart]["artikel"] = htmlspecialchars($_POST["artikel" . $ni], ENT_QUOTES);
						$abestelling[$nart]["eenheidsprijs"] = htmlspecialchars($_POST["eenheidsprijs" . $ni], ENT_QUOTES);
						$abestelling[$nart]["aantal"] = htmlspecialchars($_POST["aantal" . $ni], ENT_QUOTES);
						$abestelling[$nart]["artikeltotaal"] = htmlspecialchars($_POST["artikeltotaal" . $ni], ENT_QUOTES);
						$nart++;
					};
				};
				for ($nj = 0; $nj < $nart; $nj++) {
						$sbestelling .= "<input type='text' size='4' class='artnuminp' value='" . $abestelling[$nj]["artikelnummer"] . "' readonly> <input type='text' size='50' class='artinp' value='" . $abestelling[$nj]["artikel"] . "' readonly><input type='text' size='3' class='artnuminp' value='" . $abestelling[$nj]["eenheidsprijs"] . "' readonly><font style='color: #000000'>&euro;</font> <input type='text' size='2' class='artnuminp' value='" . $abestelling[$nj]["aantal"] . "' readonly><input type='text' size='4' class='artnuminp' value='" . $abestelling[$nj]["artikeltotaal"] . "'><font style='color: #000000'>&euro;</font>";
				};
				$sbestelling .= "<p style='color: #000000'>" . $_POST["leverancier"] . "</p><p style='color: #000000'>" . $_POST["opmerkingen"] . "</p></form>";
				echo $sbestelling;
				?>
			</div>
			<?php
			$smymailbody = $smailbody . "<div class='titlediv'>Bestelling</div><div class='menudiv'><ul><li><a href='javascript:void(0)' title='Inloggen'>Inloggen</a></li><li><a href='http://www.fritmieke.be/' title='Fritmieke website'>Site</a></li></ul></div><div class='productendiv'>De bestelling werd verzonden naar " . $_POST["leverancier"] . " met de volgende artikelen en hoeveelheden:<div class='formdiv'>" . $sbestelling . "</div></div></body></html>";
			$smailbody .= "<div class='titlediv'>Bestelling Fritmieke BVBA</div><div class='menudiv'><ul><li><a href='http://www.fritmieke.be/' title='Fritmieke website'>Fritmieke website</a></li></ul></div><div class='productendiv'><div class='formdiv'>" . $sbestelling . "</div></div></body></html>";
			
			$smailheaders = "MIME-Version: 1.0" . "\r\n";
			$smailheaders .= "Content-type: text/html; charset=iso-8859-1" . "\r\n";
			
			mail($_POST["leverancier"], "Bestelling Fritmieke BVBA", $smailbody, $smailheaders);
			mail("jeroen.eeman@gmail.com", "Bestelling bij " . $_POST["leverancier"], $smymailbody, $smailheaders);
De "echo $sbesteling" doet ie perfect, maar in de mail krijg ik geen css te zien en in plaats van de inputs met de respectievelijk toegewezen waardes, krijg ik dit: [ ]
Aanvaardt een mail geen formulieren misschien of geen link naar een externe css-file?
De link naar de css-file is wel degelijk de juiste.
 
Laatst bewerkt:
Volgensmij accepteert een mail niet zoveel HTML... zou ik gewoon even nazoeken als ik jou was. Ze gebruiken denk ik een subset van de volledige set, en er zijn ook nog providers die het gewoon helemaal niet ondersteunen en alleen tekst doen.
 
Dank je wel, Frats, voor deze snelle reactie.
Het eigenaardige is dat ik eerder al mails heb laten sturen met nog heel wat meer html die zelfs nu nog werken, dus ik denk niet dat het daaraan zal liggen.
Mocht je nog ideeën hebben, laat maar komen hé ;)
 
Laatst bewerkt:
Thx, Tha Devil, kan me weer wa bezig houden ;)
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan