game/ajax_checklogin.php

40 lines
1.5 KiB
PHP

<?php
//Вызывается из ekr.php
//fixme Технически это всратое API и ему самое место в API.
use Core\Db;
use Validator\Login;
const GAME = true;
include_once('_incl_data/__config.php');
include_once('_incl_data/class/__db_connect.php');
if (!isset($_GET['login'])) {
return;
}
$_GET['login'] = htmlspecialchars($_GET['login'], null);
$validator = new class extends Login {
private function exist(): bool
{
return Db::getValue('select count(login) from users where login = ?', [$this->login]) > 0;
}
public function getstatus(): string
{
if ($this->exist()) {
return '<b style="color:red">Логин занят.</b>';
}
if (parent::check()) {
return '<b style="color:green">Логин свободен!</b>';
}
return '<b style="color:red">Неверный логин.</b>';
}
};
echo $validator->setLogin($_GET['login'])->getstatus();
//todo Написать класс, который будет использоваться тут, в ekr.php, в _newanimal.php и в проверках при регистрации.
//todo При этом сюда стоит подтягивать наследование класса, в который просто добавляется проверка на exist() которая не нужна в других местах.
//todo function testBad($txt), function is_login($login), function en_ru($txt)