Ошибка при регистрации

Различные баги и ошибки *движка*
Прежде чем стучать об ошибке посмотрите документацию. Спасибо Изображение
Ответить
flour
Сообщения: 5
Зарегистрирован: 19 сен 2021, 06:00

19 сен 2021, 06:58

1. При установке не хватало папки cache, пришлось создавать в ручную


2. После регистрации пишет "Пользователь зарегистрирован"
Идет перенаправление
но при авторизации
Пользователь с таким логином не найден. Пожалуйста, попробуйте еще раз (убедитесь, что caps lock выключен) #1717
В базе данных тоже нет инфы
Аватара пользователя
Bogdasar
Администратор EPW
Сообщения: 16
Зарегистрирован: 08 сен 2020, 23:47

20 сен 2021, 16:26

flour писал(а): 19 сен 2021, 06:58 1. При установке не хватало папки cache, пришлось создавать в ручную


2. После регистрации пишет "Пользователь зарегистрирован"
Идет перенаправление
но при авторизации
Пользователь с таким логином не найден. Пожалуйста, попробуйте еще раз (убедитесь, что caps lock выключен) #1717
В базе данных тоже нет инфы
Разберемся спасибо ! 8-)
Аватара пользователя
Bogdasar
Администратор EPW
Сообщения: 16
Зарегистрирован: 08 сен 2020, 23:47

20 сен 2021, 23:12

  1. Есть два способа убрать ошибку с папкой cache.
    Первый это просто создать папку в includes

    Второй способ это зайти в install/install_step_1.php и найти строку 6 и просто удалить ее ! :lol:

    Код: Выделить всё

    array(__EPW_CACHE_DIR__, 'cache', 0755),
  2. Что касается создания пользователя.
    Первый способ это создать аккаунт через любую игру чтобы BnetD создал поле acct_ctime.

    Второй способ это вручную создать в таблице BNET поле acct_ctime.
    Это поле создает BnetD при первой регистрации пользователя как писал выше.

    Третий способ это зайти в includes/classes/class.register.php и заменить это

    Код: Выделить всё

    if($stmt = $this->__mysqli->prepare("INSERT INTO " . __CONFIG['DB_PREF'] . $this->__tb['tb_bnet'] . " (" . $this->__tb['cl_uid'] . ", " . $this->__tb['cl_acct_username'] . ", " . $this->__tb['cl_username'] . ", " . $this->__tb['cl_acct_userid'] . ", " . $this->__tb['cl_acct_passhash1'] . ", " . $this->__tb['cl_acct_email'] . ", " . $this->__tb['cl_acct_lastlogin_ip'] . ", " . $this->__tb['cl_acct_ctime'] . ") SELECT MAX(" . $this->__tb['cl_uid'] . ") + 1, ?, ?, MAX(" . $this->__tb['cl_acct_userid'] . ") + 1, ?, ?, ?, ? FROM " . __CONFIG['DB_PREF'] . $this->__tb['tb_bnet'])) {
    
    $stmt->bind_param("sssssi", $this->__mysqli->real_escape_string($username), mb_strtolower($this->__mysqli->real_escape_string($username)) , pvpgn_sha1::pvpgn_get_hash($this->__mysqli->real_escape_string($password)), $this->__mysqli->real_escape_string($email), $_SERVER['REMOTE_ADDR'], time());
    на этот код

    Код: Выделить всё

    if($stmt = $this->__mysqli->prepare("INSERT INTO " . __CONFIG['DB_PREF'] . $this->__tb['tb_bnet'] . " (" . $this->__tb['cl_uid'] . ", " . $this->__tb['cl_acct_username'] . ", " . $this->__tb['cl_username'] . ", " . $this->__tb['cl_acct_userid'] . ", " . $this->__tb['cl_acct_passhash1'] . ", " . $this->__tb['cl_acct_email'] . ", " . $this->__tb['cl_acct_lastlogin_ip'] . ") SELECT MAX(" . $this->__tb['cl_uid'] . ") + 1, ?, ?, MAX(" . $this->__tb['cl_uid'] . ") + 1, ?, ?, ? FROM " . __CONFIG['DB_PREF'] . $this->__tb['tb_bnet'])) {
    
    $stmt->bind_param("sssss", $this->__mysqli->real_escape_string($username), mb_strtolower($this->__mysqli->real_escape_string($username)) , pvpgn_sha1::pvpgn_get_hash($this->__mysqli->real_escape_string($password)), $this->__mysqli->real_escape_string($email), $_SERVER['REMOTE_ADDR']);
flour
Сообщения: 5
Зарегистрирован: 19 сен 2021, 06:00

21 сен 2021, 00:38

По поводу первого, спасибо разобрался
а второе это моя не внимательность, оказывается я указал mysql данные не pvpgn :)
Спасибо
Ответить