Валидиране на имена

Dizasterr

Registered
Здравейте, имам въпрос относно валидирането на имената. Явно съм пропуснал да допиша една валидация при логин форма и в момента независимо какво е името влиза. Тоест ако потребителското име в базата данни е WEB, а при логин да напиша web, wEb, WEb или нещо различно и съответната парола отново ще мине през логина. Въпросът ми е как да избегна този проблем, текущият проект е на CodeIgniter. И другото може ли да направя проверката с регулярни изрази?
 
Направи си едно поле, например username_clean в което да се поставя изчистеното име и сравнявай с него.

Пример:

username | username_clean
Vankata | vankata

Код:
function username_clean($var)
{
    return strtolower($var);
}

$var = 'VAnkata';

var_dump($row['username_clean'] == username_clean($var)) // true
 
alex3 каза:
Направи си едно поле, например username_clean в което да се поставя изчистеното име и сравнявай с него.

Пример:

username | username_clean
Vankata | vankata

Код:
function username_clean($var)
{
    return strtolower($var);
}

$var = 'VAnkata';

var_dump($row['username_clean'] == username_clean($var)) // true
Той точно това се опитва да избегне ...
http://php.net/manual/en/function.strcmp.php
Това би трябвало да ти свърши работа :?:
 
SveXteZ каза:
alex3 каза:
Направи си едно поле, например username_clean в което да се поставя изчистеното име и сравнявай с него.

Пример:

username | username_clean
Vankata | vankata

Код:
function username_clean($var)
{
    return strtolower($var);
}

$var = 'VAnkata';

var_dump($row['username_clean'] == username_clean($var)) // true
Той точно това се опитва да избегне ...
http://php.net/manual/en/function.strcmp.php
Това би трябвало да ти свърши работа :?:

Да верно, извинявам се, не съм го дочел. :)
 
Отново не става. Самият израз ми се вижда грешен.
PHP:
			$this->db->where('user', $this->input->post('username'));
			$this->db->where('pass',$this->input->post('pass');
			$query = $this->db->get('table');
			
			$user = $this->input->post('username');
			
			if(strcmp($user, $query->result()) == 0)
			{	

                        }
Струва ми се, че аз бъркам някъде.
 
Не съм запознат с CI, но кода, който си дал не ми се връзва нещо. Сигурен ли си, че $query->result() връща очакваното от теб ?
 
Ами дебъгни го и виж какво връща. Не знам кое, какво връща. Някой по-запознат с CI ще може по-добре да ти помогне.
 
Намерих си сам грешката. Беше в това, че не изваждах резултата в стринг, а в масив, което забелязах по - късно. Благодаря на всички.
 

Back
Горе