hoe controleer je of de ingevoerde gegevens alleen maar uit letters en cijfers bestaat? ik wil dit gebruiken zodat mensen geen spaties en andere rare tekens in hun loginnaam kunnen gebruiken.
Met een regexp :)

Zoiets als: <? "^[A-Za-z0-9]+$" ?>
ik heb het gevonden :)

wist dat er zo'n soort functie voor was maar wist de naam niet dus kon er niet naar zoeken :(

bedankt!
ctype_alnum();
die is ook erg handig. die gebruik ik nu om de naam en woonplaats te controleren :)

maar voor loginnaam is een underscore ook toegestaan dus werkt die functie niet :(
if (!preg_match('/[a-z0-9-_]+/i',$woonplaats)) {
# Woonplaats heeft geen geldige waarde!
}
ik heb hem nu zo:

if(!ereg("(^[-_@a-zA-Z0-9]+$)",$login)){
Login niet geldig
}

opmerkingen/tips??
<?
if(!eregi("(^[-_@a-z0-9]+$)",$login)){
Login niet geldig
}
?>

eregi gebruiken is hier makkelijker dan A-Z er ook bij te zetten
Mja, mierenneuquen over 2 tekentjes, rickie toch! Ik blijf bij preg_match :)
tja, zo ben ik nou eenmaal (rolleyes)

preg_match is ook mijn eerste keus
if(!preg_match('/(^[-_@a-z0-9]+$)/i",$login)){
Login niet geldig
}
Mijn sanatize stappen zijn vrijwel altijd de volgende:

1: Get var uit cgi object, of $_GET/$_POST
2: check voor geldigheid volgens stricte regels voor sommige velden als postcode, telefoonnummer, etc, vermijd hierbij het '.' teken als de pest.
3: strip alle html over alle velden (XSS: Mij zalle ze niet krijge)
4: quote alle velden wanneer ze mysql in gaan.

Reageren