23.08.2012, 06:53
pawn Код:
При коннекте:
mysql_format(database,string,"SELECT * FROM `Accounts` WHERE Name = '%s'",PlayerName);
mysql_function_query(database,string,false,"ExistionCallback","ds",playerid,PlayerName);//Отправляем запрос
Далее
forward ExistionCallback(playerid,name[]);
public ExistionCallback(playerid,name[])//Паблик вызывается после обработки запроса.
{
mysql_store_result();
if(!IsPlayerConnected(playerid))//Защита от случаев когда результат приходит, а игрок уже покинул сервер.
{
mysql_free_result();
return 1;
}
new PlayerName[MAX_PLAYER_NAME];
GetPlayerName(playerid,PlayerName,sizeof PlayerName);
if(strcmp(name,PlayerName,true))//Защита от случаев когда результат приходит, а игрок уже покинул сервер и на его место зашел другой
{
mysql_free_result();
return 1;
}
Далее ваш код с mysql_num_rows...
switch(mysql_num_rows())
{
case 0: // регистрация при отсутствии строки в таблице
case 1: // авторизация если одна строка есть
}
mysql_free_result();//Не забывайте использовать
return 1;
}