[B]formclass.php[/B]
<?PHP
class form
{
	function beginForm($sType, $sAction)
	{
		echo "<form method='".$sType."' action='".$sAction."'>";
	}

	function makeField($sDesc, $sType, $sName, $sValue, $iMaxlength)
	{
		echo $sDesc.": <input type='".$sType."' name='".$sName."' value='".$sValue."' maxlength='".$iMaxlength."'>";
	}

	function makeTextarea($sDesc, $sName, $iRows, $iCols, $sValue)
	{
		echo $sDesc.": <textarea name='".$sName."' rows='".$iRows."' cols='".$iCols."'>".$sValue."</textarea>";
	}

	function makeSelect($sDesc, $sName, $sValue)
	{
			echo $sDesc;
		$iAantal = count($sValue);
		echo "<select name='select'>";
		for($i = 0; $i < $iAantal; $i++)
		{
			echo "<option value='".$sValue[$i]."'>".$sValue[$i]."</option>";
		}
		echo "</select>";
	}

	function makeRadio($sDesc, $sName, $sValue)
	{
		echo $sDesc;
		$iAantal = count($sValue);
		for($i = 0; $i < $iAantal; $i++)
		{
			echo $sValue[$i].": <input type='radio' name='".$sName."' value='".$sValue[$i]."'>";
		}
	}

	function makeCheckBox($sDesc, $sName, $sValue)
	{
		echo $sDesc.": ";
		$iAantal = count($sValue);
		for($i = 0; $i < $iAantal; $i++)
		{
			echo $sValue[$i].": <input type='checkbox' name='".$sName."' value='".$sValue[$i]."'>";
		}
	}

	function makeSubmit($sName, $sValue)
	{
		echo "<input type='submit' name='".$sName."' value='".$sValue."'>";
	}

	function makeReset($sName, $sValue)
	{
		echo "<input type='reset' name='".$sName."' value='".$sValue."'>";
	}

	function endForm()
	{
		echo "</form>";
	}

	function checkEmail($sEmail)
	{
		if(preg_match("/^([a-z0-9_-]+.)*?[a-z0-9_-]+@([a-z0-9-_]{2,}).[a-z0-9-_]*(.[a-z0-9- _]{2,})*$/i", $sEmail))
		{
			return true;
		} else
		{
			return false;
		}
	}

	function checkURL($sUrl)
	{	 				
		if(ereg("http:[/][/]|www.)([a-z]|[A-Z]|[0-9]|[/.]|[~])", $sUrl))
		{
			return true;
		} else
		{
			return false;
		}
	}

	function showError($sType)
	{
		echo "Je hebt je <B>".$sType."</B> niet (correct) ingevuld!<BR>";
		echo "<A HREF='javascript:history.go(-1);'>Keer terug!</A>";
	}

	function showMessage($sMessage, $sType)
	{
		if($sType == "normaal")
		{
			echo addslashes($sMessage);
		} else if($sType == "email")
		{
			echo "<A HREF='mailto:".addslashes($sMessage)."'>".addslashes($sMessage)."</A>";
		} else if($sType == "website")
		{
			echo "<A HREF='".addslashes($sMessage)."'>".addslashes($sMessage)."</A>";
		}
	}
}
?>

[b]voorbeeld.php[/b]
<?PHP
include("formclass.php");
$cForm = new form;
if(!IsSet($_POST['submit']))
{
	$cForm->beginForm("POST", "voorbeeld.php");
	// begin een nieuw formulier
	// methode: post
	// actie: pagina.php

	$cForm->makeField("Username", "text", "username", "", "30");
	// maak een invoer veld
	// Omschrijving: username
	// type: text
	// naam: username
	// waarde: -
	// max. lengte: 30
	echo "<BR>";
	$cForm->makeField("Email", "text", "email", "", "30");
	// maak een invoer veld
	// Omschrijving: email
	// type: text
	// naam: email
	// waarde: -
	// max. lengte: 30
	echo "<BR>";
	$cForm->makeField("Website", "text", "website", "", "30");
	// maak een invoer veld
	// Omschrijving: website
	// type: text
	// naam: website
	// waarde: -
	// max. lengte: 30
	echo "<BR>";
	$cForm->makeTextarea("Bericht", "text", "5", "20", "");
	// maak een textarea
	// Omschrijving: bericht
	// naam: text
	// rijen: 20
	// kolommen: 20
	// waarde: -
	echo "<BR>";

	$sValue = array();
	$sValue[0] = "Hallo";
	$sValue[1] = "Hoi";
	$sValue[2] = "Hai";
	// array maken met de waarden voor de select, radio en checkbox
	$cForm->makeSelect("Select", "select", $sValue);
	echo "<BR>";
	$cForm->makeRadio("Radio", "radio", $sValue);
	echo "<BR>";
	$cForm->makeCheckBox("Checkbox", "check", $sValue);
	echo "<BR>";

	$cForm->makeSubmit("submit", "Testen");
	// maak een nieuwe submit knop
	// naam: submit
	// waarde: Inloggen

	$cForm->makeReset("reset", "Leeg velden");
	// maak een nieuwe reset knop
	// naam: reset
	// waarde: Leeg velden

	$cForm->endForm();
} else
{
	if(!IsSet($_POST['username']))
	{
		$cForm->showError("username");
	} else if(!IsSet($_POST['email']))
	{
		$cForm->showError("email");
	} else if(!IsSet($_POST['website']))
	{
		$cForm->showError("website");
	} elseif(!IsSet($_POST['text']))
	{
		$cForm->showError("bericht");
	} else
	{
		if($cForm->checkEmail($_POST['email']) != TRUE)
		{
			$cForm->showError("email");
		} else if($cForm->checkURL($_POST['website']) != TRUE)
		{
			$cForm->showError("website");
		} else
		{
			$cForm->showMessage($_POST['username'], "normaal");
			echo "<BR>";
			$cForm->showMessage($_POST['email'], "email");
			echo "<BR>";
			$cForm->showMessage($_POST['website'], "website");
			echo "<BR>";
			$cForm->showMessage($_POST['text'], "normaal");
		}
	}
}
?>