PDA

Просмотр полной версии : [Вопрос] Злюка мускул атакует ошибкой)



vovandolg
08.02.2016, 16:35
В общем такой отрывок кода:



new mysql_query[110];

format(mysql_query, sizeof(mysql_query), "UPDATE `Accounts` SET `pEmail` = '%s' WHERE `Name` = '%s'",inputtext,PlayerInfo[playerid][pNames]);
mysql_function_query(connects, mysql_query, false, "", "");


И вот такая ошибка к примеру:

1064, You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'MARINO4ka'' at line 1, , UPDATE `Accounts` SET `pEmail` = 'fkFG@slfoa\' WHERE `Name` = 'MARINO4ka', 1

Вроде бы в ячейке должно хватать значения, а вылетела ерунда какая)

$continue$
08.02.2016, 18:55
local-part
The maximum total length of a user name or other local-part
is 64 characters.

domain
The maximum total length of a domain name or number is 255
characters.

Из чего следует:


const MAX_SIZE_EMAIL = 320;



static query[] = "UPDATE `Accounts` SET `pEmail` = '%e' WHERE `Name` = '%e'";
new mysql_query[sizeof(query) - 4 + MAX_PLAYER_NAME + MAX_SIZE_EMAIL + 1];
mysql_format(connects, mysql_query, sizeof(mysql_query), query, inputtext,PlayerInfo[playerid][pNames]);
mysql_function_query(connects, mysql_query, false, "", "");


link (http://tools.ietf.org/html/rfc5321#section-4.5.3)

vovandolg
08.02.2016, 20:17
Ну хорошо поставлю больше, но вопрос новый появился, вроде бы тут нету 255 или свыше 110:

'fkFG@slfoa\'
Из за собаки кол-во резко поднялось?

- - - Добавлено - - -


static query[] = "UPDATE `Accounts` SET `pEmail` = '%e' WHERE `Name` = '%e'";
warning 225: unreachable code
Вот такая жужельница

$continue$
09.02.2016, 02:57
warning 225: unreachable code - невалидный код;
Покажи строки 5 выше данного кода и ниже данного кода. Желательно скрином.

vovandolg
09.02.2016, 03:17
Нашёл кажется, я юзал format вместо mysql_format, случайно потёр приставку mysql, позже проверю код.

vovandolg
09.02.2016, 16:46
Всё чётко тему можно закрывать.