Voor een formulier wil ik de ingevulde gegevens van een naam controleren. Ik gebruik de volgende code:
<?php
echo "<form action=\"controle.php\" method=\"post\">
<input type=\"text\" size=\"50\" maxlength=\"50\" name=\"naam\" />
<input type=\"submit\" value=\"test\">
</form>";
$name = $_POST['naam'];
if (!ereg("^[A-Za-z' -]{1,50}$", $name)){
echo "De naam \"$name\" voldoet niet";
}
else{
echo "De naam \"$name\" voldoet";
}
?>
Het werkt prima voor alle tekens behalve voor de apostroph. Als ik bijvoorbeeld "Spring in 't Veld" invul, dan krijg ik de volgende tekst terug:
"De naam "Spring in \'t Veld" voldoet niet".
Waarrom voegt hij een / toe en voldoet de naam niet?
211 views