Ik heb een inlogscript.
maar om de een of andere onbekende reden heeft hij problemen met accountnamen met rare tekens zoals é ä ò e.d.
Deze wilt hij niet uitlezen
Enig idee hoe ik dat moet veranderen?
1.188 views
stefan lenders schreef op 18.05.2009 13:32Ja ok, maar ik snap hier niet veel van en het moet makkelijk gefixt worden. we hebben namelijk een db met over de 3000 bezoekers. en ik ben niet van plan om die allemaal er uit te gooien
if (!preg_match("/^[a-zA-Z0-9]+$/", $_POST['naam'])) {
Roel schreef op 19.05.2009 22:32@Karl; Moet A-Z AZ zijn?
<?php
$regex = "/^[0-9]{0,50}$/";
$zoek1 = "abc";
$zoek2 = "000000";
$zoek3 = "";
$zoek4 = null;
$zoek5 = str_repeat(0, 50); // Ik ga geen vijftig tekens tikken.
$zoek6 = str_repeat(0, 51);
$match1 = preg_match($regex, $zoek1);
$match2 = preg_match($regex, $zoek2);
$match3 = preg_match($regex, $zoek3);
$match4 = preg_match($regex, $zoek4);
$match5 = preg_match($regex, $zoek5);
$match6 = preg_match($regex, $zoek6);
var_dump($regex, $zoek1, $zoek2, $zoek3, $zoek4, $match1, $match2, $match3, $match4, $match5, $match6);
/* Ja, het kan vast en zeker makkelijker. Maar daar heb ik geen zin in.
Het levert:
string(15) "/^[0-9]{0,50}$/"
string(3) "abc"
string(6) "000000"
string(0) ""
NULL
int(0)
int(1)
int(1)
int(1)
int(1)
int(0) */
?>
<?
if(preg_match('/^[a-zA-Z_\-]+$/', $naam) == 0) { print "De opgegeven gebruikersnaam is ongeldig, je mag enkel letters gebruiken.\n"; exit; }
?>
Tim Kampherbeek schreef op 26.05.2009 04:32Ik zou het gewoon zo doen in je register,
<? if(preg_match('/^[a-zA-Z_\-]+$/', $naam) == 0) { print "De opgegeven gebruikersnaam is ongeldig, je mag enkel letters gebruiken.\n"; exit; } ?>
Mvg,
Tim Kampherbeek
/[a-zA-Z0-9]{4,15}/i