Защита от инъекций нужна только тогда, когда в твоем запросе присутствуют данные, которые юзер вводит сам. Во всех остальных случаях - по желанию.
Например:
PHP код:
if(dialogid == 1234) //ID диалога авторизации
{
format(string, sizeof(string), "SELECT * FROM `Аккаунты` WHERE `Имя` = '%s' and `Пароль` = '%s'", PlayerName, inputtext);
mysql_query(string);
}
Допустим имя игрока Johny_Smyth и он ввел такой пароль: 123123.
Сам запрос будет выглядеть так:
PHP код:
SELECT * FROM `Аккаунты` WHERE `Имя` = 'Johny_Smyth' and `Пароль` = '123123'
А теперь предположим, что игрок ввел вместо пароля: 123' or '1' = '1
Теперь запрос выглядит так:
PHP код:
SELECT * FROM `Аккаунты` WHERE `Имя` = 'Johny_Smyth' and `Пароль` = '123' or '1' = '1'
'1' = '1' всегда вернет правду, следовательно игрок сможет зайти в аккаунт даже не зная пароля.
Тут то и пригождаются функции mysql_real_escape_string и mysql_format. (следует использовать что-то одно)
mysql_format удобнее в использовании, но в случае неправильного использования есть риск краша скрипта. Новичкам я рекомендую использовать mysql_real_escape_string. Сам синтаксис можно посмотреть в теме плагина.