мой аутентификации не работает, как мой код ниже.
<?php
$login = "super";
printf(crc32($login)); // result -691938802
printf("%u",crc32($login)); //result 3603028494
if(crc32($login) * -1 == -3603028494) {
echo "user correct";
}else{
echo "user false";
}
?>
Я всегда получаю ложное имя пользователя, поэтому, я думаю, проблема в% u, как я могу изменить переменную $ login с помощью чего-то вроде $login = "%usuper"
так мой код авторизации работает? возможно ли изменить $login
Значение только без изменения, если условие, потому что я буду использовать его в форме входа в систему в будущем.
Благодарю.
crc32()
возвращает int, которое является 32-разрядным целым числом со знаком. Два числа, которые вы показываете, являются такое же количество, то есть точно такие же 32 бита, просто интерпретируемые по-разному. 2 ^ 32 — 691938802 == 3603028494. Нет проблем.
Других решений пока нет …