[code]
<?php
	// alle errors aan
	ini_set ('display_errors', 1);
	error_reporting (E_ALL);

	// deze is nodig omdat ik mysql_real_escape_string gebruik
	require '../../db_config.php';
	
	// de functie die op elk element van de array losgelaten wordt
	// $value wordt niet 'by value', maar 'by reference' meegegeven,
	// zodat de waarde in het arrayelement ook werkelijk aangepast wordt
	function safe (&$value, $key) {
		$value = trim ($value);
		$value = strtoupper ($value); // deze is alleen maar om te laten zien dat er echt iets gebeurt
		$value = mysql_real_escape_string ($value);
	}
	
	// array_walk_recursive gaat ALLE elementen van een array af,
	// OOK als het een multidimensionale array is
	// het eerste argument is de array, het tweede argument is de naam
	// van de functie die op de elementen van de array inwerkt
	if ($_SERVER['REQUEST_METHOD'] == 'POST') {
		array_walk_recursive ($_POST, 'safe');
	}
?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<html>
<head>
	<title>Array Walk Recursive</title>
	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
	<style type="text/css">
		#container {
			margin: 16px auto;
			padding: 8px;
			width: 500px;
			border-right: 1px dotted #abc;
			border-left: 1px dotted #abc;
		}
		form {
			background: #f9f9ff;
			padding: 8px;
		}
		h1 {
			font: bold 1em georgia;
			color: #abc;
			margin: 0px 0px 16px 0px;
			padding: 4px;
			border-bottom: 1px dotted #abc;
		}
		p, label, input, textarea, pre, select, option {
			font: 11px verdana;
			padding: 2px;
		}
		pre {
			color: #999;
		}
		label {
			cursor: pointer;
		}
		label.naast {
			float: left;
			width: 100px;
			text-align: right;
		}
		.lijnuit {
			margin-left: 104px;
		}
	</style>
</head>

<body>
	<div id="container">
		<h1>Testformulier</h1>
		<form method="post" action="#">
			<p>
				<label for="naam" class="naast">naam:</label>
				<input id="naam" name="naam" type="text">
			</p>
			<p>
				<label for="adres" class="naast">adres:</label>
				<input id="adres" name="adres" type="text">
			</p>
			<p>
				<label for="postcode" class="naast">postcode:</label>
				<input id="postcode" name="postcode" type="text">
			</p>
			<p>
				<label for="woonplaats" class="naast">woonplaats:</label>
				<input id="woonplaats" name="woonplaats" type="text">
			</p>
			<p>
				<input id="appel" name="fruit[]" type="checkbox" value="appel" class="lijnuit">
				<label for="appel">appel</label>
			</p>
			<p>
				<input id="peer" name="fruit[]" type="checkbox" value="peer" class="lijnuit">
				<label for="peer">peer</label>
			</p>
			<p>
				<input id="banaan" name="fruit[]" type="checkbox" value="banaan" class="lijnuit">
				<label for="banaan">banaan</label>
			</p>
			<p>
				<input id="perzik" name="fruit[]" type="checkbox" value="perzik" class="lijnuit">
				<label for="perzik">perzik</label>
			</p>
			<p>
				<label for="maand" class="naast">maand:</label>
				<select id="maand" name="maand">
					<option value="01">januari</option>
					<option value="02">februari</option>
					<option value="03">maart</option>
					<option value="04">april</option>
					<option value="05">mei</option>
					<option value="06">juni</option>
					<option value="07">juli</option>
					<option value="08">augustus</option>
					<option value="09">september</option>
					<option value="10">oktober</option>
					<option value="11">november</option>
					<option value="12">december</option>
				</select>
			</p>
			<p>
				<label for="hobbies" class="naast">hobbies:</label>
				<select id="hobbies" name="hobbies[]" multiple>
					<option value="voetballen">voetballen</option>
					<option value="tennissen">tennissen</option>
					<option value="gamen">gamen</option>
					<option value="rock &amp; roll">rock &amp; roll</option>
					<option value="'t nachtleven">'t nachtleven</option>
				</select>
			</p>
			<p>
				<input id="rood" name="kleur" type="radio" value="rood" checked="checked" class="lijnuit">
				<label for="rood">rood</label>
			</p>
			<p>
				<input id="groen" name="kleur" type="radio" value="groen" class="lijnuit">
				<label for="groen">groen</label>
			</p>
			<p>
				<input id="blauw" name="kleur" type="radio" value="blauw" class="lijnuit">
				<label for="blauw">blauw</label>
			</p>
			<p>
				<label for="opmerkingen" class="naast">opmerkingen:</label>
				<textarea id="opmerkingen" name="opmerkingen">
Single quote: '
Double quote: &quot;
Ampersand: &amp;
				</textarea>
			</p>
			<p>
				<input type="submit" value="verzenden" class="lijnuit">
			</p>
		</form>
		<?php
		if ($_SERVER['REQUEST_METHOD'] == 'POST') {
			echo '<div id="values">';
			echo '<h1>Verzonden waarden</h1>';
			echo '<pre>';
			print_r ($_POST);
			echo '</pre>';
			echo '</div>';
		}
		?>
	</div>
</body>
</html>
[/code]