Heb hier een formulier, verzenden lukt. Maar alle info komt in de onderwerpregel van outlook en niet in het bericht. Beide radiobuttons worden niet uitgelezen. Waar zit de fout?
<?
ob_start(); // Voor het cookie setten, anders zal dat hoogst waarschijnlijk niet werken.
$cNaam = 'Je naam'; // Je naam...
$cEmail = '[email protected]'; // email waar het heen moet
$cOndPre = ''; // prefix voor onderwerp
$cOndSuf = '- van iemand.nl'; // suffix achter onderwerp
$cSpam = 5; // Anti Spam, X aantal minuten
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
	<title>Mail Formulier</title>
	<style type="text/css">
		body, input, textarea
			{
			font-size: 10pt;
			color: #000000;
			font-family: Verdana, Arial, Helvetica, sans-serif;
			}
		input, textarea
			{ 
			border: 1px solid black;
			background-color: #FEFEFE;
			}
	</style>
</head>
<body>
<?
if(!empty($_POST['verstuur']))
	{ // Er is op de knop 'verstuur e-mail' gedrukt...
	$pError = ''; // Een begin met de errors als die er zijn
	$pI = 0; // Deze telt het aantal erros.
	if(strlen($_POST['naam']) < 2)
		{ $pError .= '- Je hebt je naam niet ingevuld!<br>'; $pI++; }
	if(strlen($_POST['email']) < 6 || !ereg('@',$_POST['email']) || !ereg('.',$_POST['email']))
		{ $pError .= '- Je hebt geen geldig email-adres ingevuld!<br>'; $pI++; }
	if(strlen($_POST['onderwerp']) < 3)
		{ $pError .= '- Je hebt geen geldig onderwerp ingevuld!<br>'; $pI++; } 
	if($_POST['check'] == nee)
	{echo "U heeft de algemene voorwaarden niet geaccepteerd";}
	if($_POST['check'] == ja)
	{echo "Bedankt voor uw opdracht. U heeft de algemene voorwaarden geaccepteerd. Na overmaking van de aanbetaling ontvangt u zo spoedig mogelijk
	een bevestigings mail.";}

		
	if(!empty($pError))
		{ // Als er dan toch errors zijn..
		echo ($pI == 1) ? 'De volgende fout is opgetreden:<br>' : 'De volgende fouten zijn opgetreden:<br>'; // even kijken of het meervoud of enkelvoud is.
		echo $pError; // echoën van de error(s)
		}
	else
		{
		// uiteindelijk toch mailen :)
		$pHeader  = "MIME-Version: 1.0\r\n";
		$pHeader .= "Content-type: text/html; charset=iso-8859-1\r\n";
		$pHeader .= "To: ".$cNaam." <".$cEmail.">\r\n";
		$pHeader .= "From: ".$_POST['naam']." <".$_POST['email'].">\r\n";
		$website = (!empty($_POST['website'])) ? '<br><br>Website: '.$_POST['website'] : '';
		$pBericht = 'Het volgende bericht is gestuurd via het contact formulier:<br><hr><br>'.$_POST['bericht'].$website;
		mail($cEmail,$cOndPre.' '.$_POST['onderwerp'].' '.$cOndSuf,$pBericht,$pHeader);
							
		echo 'De e-mail is succesvol verzonden!';
		setcookie('mailform',1,time()+($cSpam*60)); // cookie zetten tegen spam
		
		$pShow = true; // formulier wordt niet weer getoond
		}
	}
	// Kijken of er een waarde moet worden gegeven aan velden...
	$pNaam = (isset($_POST['naam'])) ? $_POST['naam'] : '';
	$pEmail = (isset($_POST['email'])) ? $_POST['email'] : '';
	$pOnderwerp = (isset($_POST['onderwerp'])) ? $_POST['onderwerp'] : '';
	
	
	// kijken of het cookie bestaat, zoja dan wordt het formulier niet getoond.
	if(isset($_COOKIE['mailform']))
		{ $pShow = true; echo 'Je kunt maar eens in de '.$cSpam.' minuten een e-mail versturen!'; }
		
	if(!isset($pShow))
		{ // het formulier als $pShow niet bestaat.
		?>
		<form method="post" action="<?= $_SERVER['../../PHP_SELF']; ?>">
		
  <dl>
    <dt><b>Naam:</b> <font color="#999999"><i>(verplicht)</i></font></dt>
    <dd> 
      <input type="text" name="naam" size="25" value="<?= $pNaam; ?>">
    </dd>
    <dt><b>Email:</b> <font color="#999999"><i>(verplicht)</i></font></dt>
    <dd> 
      <input type="text" name="email" size="25" value="<?= $pEmail; ?>">
    </dd>
    <dd>&nbsp; </dd>
    <dt><b>Onderwerp:</b> <font color="#999999"><i>(verplicht)</i></font></dt>
    <dd> 
      <input type="text" name="onderwerp" size="25" value="Algemene Voorwaarden<?= $pOnderwerp; ?>">
    </dd>
    <dt>&nbsp;</dt>
  </dl>
  <p>&nbsp;</p><input type="radio" name="check" value="ja"
  <?php if($_POST['check'] == "ja"){echo'checked';} ?>  
> Ja
<input type="radio" name="check" value="nee" 
 <?php if($_POST['check'] == "nee"){echo'checked';} ?>  
> Nee 

  <p>&nbsp;</p>
  <dl>
    <dd>&nbsp; </dd>
    <dt><b>Formulier opties:</b></dt>
    <dd> 
      <input type="submit" value="Verstuur e-mail" name="verstuur">
      <input type="reset" value="Wis velden">
    </dd>
  </dl>
		</form>
		<?
		}
		?>
</body>
</html>
De radiobuttons worden niet uitgelezen omdat je op regel 39 en 41 geen quotes rond 'nee' en 'ja' hebt staat...

In de body van je bericht moet $_POST['bericht'] komen te staan, maar je hebt daar geen input veld voor in je formulier?

Reageren