MD5 -
Surprice - 11.05.2016
Всем доброго времени суток!
Хэширую пароли таким запросом при регистрации:
PHP Code:
format(QUERY,sizeof(QUERY), "INSERT INTO "TABLE_ACCOUNTS" (`Name`, `pKey`, `pLevel`, `pDonatemoney2`, `pPnumber`, `pBank`, `pCash`, `pChar`, `pDataReg`, `pIpReg`, `pTut`, `pCar`, `pRank`, `pEmail`, `pDrug`, `pSex`) VALUES ('%s', MD5('%e'), '10', '15000', '%d', '100', '250000000', '%d', '%s', '%s', '1', '462', '1', '%s', '%s', '%d')", Name(playerid),pRegData[playerid][0],PlayerInfo[playerid][pPnumber],skinid,strstre,playersip,pRegData[playerid][1],pRegData[playerid][2], pRegData[playerid][3][0]);
mysql_tquery(dbHandle, QUERY, "", "");
Хэшируются нормально.
При авторизации читаю пароль так:
PHP Code:
mysql_format(dbHandle, QUERY, sizeof(QUERY), "SELECT * FROM "TABLE_ACCOUNTS" WHERE `ID` = '%d' AND `pKey` = MD5('%e')", PlayerInfo[playerid][MysqlpID], inputtext);
mysql_tquery(dbHandle, QUERY, "LoginCallback", "d", playerid);
Но читает не правильно, пароль не верный. Что делать? Сам плагин рабочий (автор плагина ******).
Re: MD5 -
Stepashka - 11.05.2016
Дебагать пробовал?
На входе обоих частей точно одинаковые пароли?
При запросе странно как-то просить ID когда ты его в этом месте знать не должен, обычно логинятся что бы узнать идентификатор в базе?!
Re: MD5 -
Surprice - 11.05.2016
Quote:
Originally Posted by Stepashka
Дебагать пробовал?
На входе обоих частей точно одинаковые пароли?
При запросе странно как-то просить ID когда ты его в этом месте знать не должен, обычно логинятся что бы узнать идентификатор в базе?!
|
Точно одинаковые.
Попробовал через ник вместо ID, тоже самое...
Re: MD5 -
Stepashka - 11.05.2016
Quote:
Originally Posted by Surprice
Точно одинаковые.
Попробовал через ник вместо ID, тоже самое...
|
А если напрямую в базе запрос выполнить, находит?
Re: MD5 -
Surprice - 11.05.2016
Quote:
Originally Posted by Stepashka
А если напрямую в базе запрос выполнить, находит?
|
Отправил запрос:
PHP Code:
SELECT * FROM `Accounts` WHERE `Name` = '%s' AND `pKey` = MD5('%s') LIMIT 1
PHP Code:
MySQL вернула пустой результат (т.е. ноль строк). ( Запрос занял 0.0010 сек. )
Re: MD5 -
Stepashka - 11.05.2016
Данные подставить надеюсь не забыл?
Re: MD5 -
Surprice - 11.05.2016
Quote:
Originally Posted by Stepashka
Данные подставить надеюсь не забыл?
|
Подставил. Выдаёт.
Если подставить так:
PHP Code:
SELECT * FROM `Accounts` WHERE `Name` = 'тут пишу ник' AND `pKey` = MD5('тут пишу пароль') LIMIT 1
То не выдаёт.
Если так:
PHP Code:
SELECT * FROM `Accounts` WHERE `Name` = 'тут пишу ник' AND `pKey` = тут пишу пароль LIMIT 1
Выдаёт.
Re: MD5 -
S4D - 11.05.2016
PHP Code:
Name(playerid), pRegData[playerid][0], PlayerInfo[playerid][pPnumber], skinid, strstre, playersip, pRegData[playerid][1], pRegData[playerid][2], pRegData[playerid][3][0]
Мне кажется, что тут что-то не так
Re: MD5 -
Surprice - 11.05.2016
Quote:
Originally Posted by S4D
PHP Code:
Name(playerid), pRegData[playerid][0], PlayerInfo[playerid][pPnumber], skinid, strstre, playersip, pRegData[playerid][1], pRegData[playerid][2], pRegData[playerid][3][0]
Мне кажется, что тут что-то не так
|
Проверил, похоже на то, но всё равно, понять не могу в чём же дело. Возможно всё дело в:
PHP Code:
pRegData[playerid][0]
При замене pRegData[playerid][0] хэш - меняется (при создании нового аккаунта)
Re: MD5 -
S4D - 11.05.2016
Ммм, понятно
Re: MD5 -
Surprice - 11.05.2016
Quote:
Originally Posted by S4D
Ммм, понятно
|
Как решить данную проблему?
Практически все варианты уже перепробовал.
Re: MD5 -
Surprice - 11.05.2016
Исправил. Дело было в паблике LoginCallback
Re: MD5 -
TheMallard - 12.05.2016
А с какого перепугу ты вдруг используешь MD5 include (не plugin) от ******, если хэширование у тебя на уровне MySQL?