Jon Cameron
Умник
Привет всем. Решил сегодня сделать функцию смены пароля и напоролся на проблему.
Значит, когда я вписываю новый пароль в диалоговое окно и отправляю (не имеет значения то ли цифры просто, то ли латин.буквы с цифрами) в базе данных у меня записывается совсем другие, например: 1-ый раз я сменил пароль, в базе записалось "83" (хотя такого у меня в пароле не было), 2-ой раз пароль сменил, получилось цифра "50", в чем ошибка,подскажите пожалуйста. Тип столбца с паролем в БД "varchar".
PHP:
if(!response) return true;
if(!strlen(inputtext) || strlen(inputtext) < 6 || strlen(inputtext) > 30) return SCM(playerid,COLOR_WHITE,"Введите от 6 до 30 символов");
if(strfind(inputtext,"%",false) != -1) return SCM(playerid,COLOR_LITERED,"В тексте найден запрещенный символ!");
new temp[30];
mysql_real_escape_string(inputtext,temp);
static const update_pass[] = "UPDATE `players` SET `password` = '%d' WHERE `id` = '%d' LIMIT 1";
new str[sizeof(update_pass)-2*2+30+9];
format(str,sizeof(str),update_pass,temp,pinfo[playerid][pID]);
mysql_query(dbHandle,str,false);
static const new_pass[] = "Ваш новый пароль: {18CF26}%s";
new str1[sizeof(new_pass)-2+30];
format(str1,sizeof(str1),new_pass,temp);
SCM(playerid,COLOR_WHITE,str1);
SCM(playerid,COLOR_GRIN,"Сделайте скриншот (F8) чтобы не забыть его!");
