У меня есть система входа в систему, встроенная в мой сайт, но я программист видеоигр и хочу интегрировать свой сайт в свои игры. Я использую PHP для проверки пароля пользователя и его предположения, чтобы вернуть случайный идентификатор пользователя, который я могу использовать позже, чтобы проверить пользователя. Я делаю запрос POST из игры на веб-сервер для проверки информации пользователя, я не могу разместить выделенный сервер для пользователя auth, и мой текущий веб-хост не позволяет удаленный доступ к базе данных MYSQL, так что это мой единственный вариант. Вот последний бит кода, который дает мне возможность.PHP случайный сгенерированный идентификатор не соответствует базе данных
$userid = $this->generateRandID();
$time = time();
$database->updateUserField($_POST["username"], "userid", $userid);
$database->addActiveUser($_POST["username"], $time);
$database->removeActiveGuest($_SERVER['REMOTE_ADDR']);
echo($userid);
Это, предполагают, чтобы добавить пользователя в качестве активного пользователя и обновления идента поле в базе данных MySQL, а затем повторить идентификатор пользователя для меня, чтобы потом сохранить в игре. Проблема в том, что эховое имя пользователя не похоже на то, что указано в базе данных. Здесь updateUserField, это просто ярлык для меня, поэтому мне не нужно менять много строк кода, если мне нужно изменить его по любой причине.
function updateUserField($username, $field, $value){
return mysqli_query($this->connection, "UPDATE ".TBL_USERS." SET ".$field." = '$value' WHERE username = '$username'");
}
для здравомыслия людей, которые должны прочитать ваш код, пожалуйста, используйте sprintf – Galen
@Galen Почему это имеет значение? Я не понимаю, как это будет хорошо. – legobear154
Это сделает ваш код более удобочитаемым – Galen