Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

При активации "какой-то" функции - падает сервер

Статус
В этой теме нельзя размещать новые ответы.

Anthony_Harison

Новичок
Дело вот в чем.
За основу когда то брал Sun City*...
Переделал его, исправил все не доработки.
Вообщем все, проект готов к запуску, но тут такая проблема.
Поставил его на хостинг(пробовал 3 разных) и при нажатии кнопки "спавн", сервер крашится.
При этом, под виндой все работает гуд. А вот с линуксом ...
В логах ничего нет, он просто обрывается.
Скачал SunCity поставил и там такая же фигня.
Чекал мускул - подключение успешное, все загружается.
Ломаю голову уже который день.
Лог кончается словами: "игрок" успешно использовал диалог номер "бла бла бла"
В этом диалоге есть функция loadaccount
Диалог о котором говорить в логе:
PHP:
ShowPlayerDialog(playerid,D_Vubors,2,"{FFA500}[Регистрация]{ffffff} Шаг 5/5 {33AA33}[Выбор спавна]","[1]Проживающий в штате\n[2]После несчастного случая\n[3]Житель деревни","Принять","Отмена");
Функция диалога:

PHP:
case D_Vubors:
		{
			if(response)
			{
				switch(listitem)
				{
				case 0:
					{
						PlayerInfo[playerid][pSpawnz] = 1;
						SendClientMessage(playerid, COLOR_YELLOW, "Вы выбрали место спавна - Проживающий в штате");
						SendClientMessage(playerid, COLOR_YELLOW, "Ваш аккаунт успешно активирован!");
						SendClientMessage(playerid, COLOR_YELLOW, "Для помощи используйте /menu, поиск мест: /gps");
						ShowPlayerDialog(playerid,D_Vubors_select,DIALOG_STYLE_MSGBOX,"Проживающий в штате","Вы выбрали историю, проживающий в штате. \n Вы обычный житель житель штата San Andreas. \n вы роделись и выросли в этих краях.","Продолжить", "");
						CreateAccount(playerid, PlayerInfo[playerid][pPassword]);
						SpawnPlayer(playerid);
						PlayerInfo[playerid][pLic][0] = 1;
						
					}
				case 1:
					{
						PlayerInfo[playerid][pSpawnz] = 2;
						SendClientMessage(playerid, COLOR_YELLOW, "Вы выбрали место спавна - После несчастного случая");
						SendClientMessage(playerid, COLOR_YELLOW, "Ваш аккаунт успешно активирован!");
						SendClientMessage(playerid, COLOR_YELLOW, "Для помощи используйте /menu, поиск мест: /gps");
						CreateAccount(playerid, PlayerInfo[playerid][pPassword]);
						SpawnPlayer(playerid);
                        PlayerInfo[playerid][pLic][0] = 1;
                        
					}
				case 2:
					{

						PlayerInfo[playerid][pSpawnz] = 3;
						SendClientMessage(playerid, COLOR_YELLOW, "Вы выбрали место спавна - Житель деревни");
						SendClientMessage(playerid, COLOR_YELLOW, "Ваш аккаунт успешно активирован!");
						SendClientMessage(playerid, COLOR_YELLOW, "Для помощи используйте /menu, поиск мест: /gps");
						CreateAccount(playerid, PlayerInfo[playerid][pPassword]);
						SpawnPlayer(playerid);
                        PlayerInfo[playerid][pLic][0] = 1;
                        
					}
				}
			}
		}
Вот собственно и функция, но как мне кажется в ней все гуд(Это при логине).
PHP:
stock LoadAccount(playerid)
{
 	new string[64];
	new playername[32];
	GetPlayerName(playerid,playername,32);
	format(query,256, "SELECT * FROM "TABLE_ACCOUNT" WHERE name = '%s'  LIMIT 1",playername);
    if(!mysql_ping()) mysql_reconnect();
	mysql_query(query);
	mysql_store_result();
	if(mysql_fetch_row(query) == 1)
	{
		sscanf(query, "p<|>is[32]s[32]s[16]is[32]s[64]iiiis[16]iiiiiiis[16]s[40]s[160]iiiiis[16]s[20]iiiis[32]s[32]fiiiiis[32]s[32]iiiiiiiiiiiiiiiiiiiiiiifiiiiiiiiiiiiiiiiiiis[128]iifffi",
		PlayerInfo[playerid][pID],
		PlayerInfo[playerid][pSendername],
		PlayerInfo[playerid][pPassword],
		PlayerInfo[playerid][pIP],
		PlayerInfo[playerid][pAdmin],
		PlayerInfo[playerid][pIpPassword],
		PlayerInfo[playerid][pMail],
		PlayerInfo[playerid][pLevel],
		PlayerInfo[playerid][pCash],
		PlayerInfo[playerid][pBank],
		PlayerInfo[playerid][pExp],
		PlayerInfo[playerid][pRegData],
		PlayerInfo[playerid][pLeader],
		PlayerInfo[playerid][pMember],
		PlayerInfo[playerid][pRank],
		PlayerInfo[playerid][pWarn],
		PlayerInfo[playerid][pSex],
		PlayerInfo[playerid][pModel],
		PlayerInfo[playerid][pChar],
		PlayerInfo[playerid][pLics],
		PlayerInfo[playerid][pGuns],
		PlayerInfo[playerid][pAmmos],
		PlayerInfo[playerid][pGunSkill][6],
		PlayerInfo[playerid][pMuted],
		PlayerInfo[playerid][pPick],
		PlayerInfo[playerid][pCheckTime],
		PlayerInfo[playerid][pNews],
		PlayerInfo[playerid][pPhones],
		PlayerInfo[playerid][pTexts],
		PlayerInfo[playerid][pJail],
		PlayerInfo[playerid][pJailTime],
		PlayerInfo[playerid][pWanted],
		PlayerInfo[playerid][pWantedTime],
		PlayerInfo[playerid][pWantedWho],
		PlayerInfo[playerid][pWantedReason],
		PlayerInfo[playerid][pHeal],
		PlayerInfo[playerid][pDrugs],
		PlayerInfo[playerid][pMats],
		PlayerInfo[playerid][pCrimes],
		PlayerInfo[playerid][pJob],
		PlayerInfo[playerid][pMarried],
		PlayerInfo[playerid][pWhoMarried],
		PlayerInfo[playerid][pReferal],
		PlayerInfo[playerid][pRefMoney],
		PlayerInfo[playerid][pPayCheck],
		PlayerInfo[playerid][pFish],
		PlayerInfo[playerid][pLottery],
		PlayerInfo[playerid][pVIP],
		PlayerInfo[playerid][pTime],
		PlayerInfo[playerid][pFightStyle],
		PlayerInfo[playerid][pCredits],
		PlayerInfo[playerid][pTotalCredits],
		PlayerInfo[playerid][pSkin1],
		PlayerInfo[playerid][pSkin2],
		PlayerInfo[playerid][pSkin3],
		PlayerInfo[playerid][pSpawnChange],
		PlayerInfo[playerid][pGunSkill][0],
		PlayerInfo[playerid][pGunSkill][1],
		PlayerInfo[playerid][pGunSkill][2],
		PlayerInfo[playerid][pGunSkill][3],
		PlayerInfo[playerid][pGunSkill][4],
		PlayerInfo[playerid][pGunSkill][5],
		PlayerInfo[playerid][pRPR],
		PlayerInfo[playerid][pGlasses],
		PlayerInfo[playerid][pSatiety],
		PlayerInfo[playerid][pRPRGive],
		PlayerInfo[playerid][pHealthS],
		PlayerInfo[playerid][pSportEXP],
		PlayerInfo[playerid][pOnline],
		PlayerInfo[playerid][pZakon],
		PlayerInfo[playerid][pBolezn],
		PlayerInfo[playerid][ProverkaIP],
		PlayerInfo[playerid][pHospital],
		PlayerInfo[playerid][pWatch],
		PlayerInfo[playerid][pCiggare],
		PlayerInfo[playerid][pSprunk],
		PlayerInfo[playerid][pMask],
		PlayerInfo[playerid][pPhoneBalance],
		PlayerInfo[playerid][pTruckSkill],
		PlayerInfo[playerid][cModel],
		PlayerInfo[playerid][cClass],
		PlayerInfo[playerid][cFuel],
		PlayerInfo[playerid][cColor][0],
		PlayerInfo[playerid][cColor][1],
		PlayerInfo[playerid][cLock],
		PlayerInfo[playerid][cCost],
		PlayerInfo[playerid][cVehcom],
		PlayerInfo[playerid][cPaintjob],
		PlayerInfo[playerid][pSpawnz],
		PlayerInfo[playerid][pPoss_x],
		PlayerInfo[playerid][pPoss_y],
		PlayerInfo[playerid][pPoss_z],
		PlayerInfo[playerid][pSpawnC]);
		mysql_free_result();
		sscanf(PlayerInfo[playerid][cVehcom], "p<,>a<i>[14]",PlayerInfo[playerid][cVehcoms]);
		LoadMyCar(playerid);
		PlayerLogged[playerid] = true;
		TimeLogged[playerid] = -1;
		//	TextDrawShowForPlayer(playerid,Text:Textdraw2);
		sscanf(PlayerInfo[playerid][pTexts], "p<,>a<i>[3]", PlayerInfo[playerid][pText]);
		sscanf(PlayerInfo[playerid][pPhones], "p<,>a<i>[3]", PlayerInfo[playerid][pPhone]);
		sscanf(PlayerInfo[playerid][pLics], "p<,>a<i>[5]",PlayerInfo[playerid][pLic]);

		if(PlayerInfo[playerid][pAdmin] > 0) AdminLogged[playerid] = true, SendClientMessage(playerid, COLOR_YELLOW,"Äîáðî ïîæàëîâàòü, äîðîãîé àäìèíèñòðàòîð");
		if(PlayerInfo[playerid][pLeader] > 0) SendMes(playerid, COLOR_WHITE, "[F] %s ïðèâåòñòâóåò âàñ êàê ðóêîâîäèòåëÿ",FracInfo[PlayerInfo[playerid][pLeader]][fName]);
		if(PlayerInfo[playerid][pMember] > 0 && strcmp(PlayerInfo[playerid][pSendername],FracInfo[PlayerInfo[playerid][pMember]][fAssistant],true) == 0) SendMes(playerid, COLOR_YELLOW, "Âû âîøëè êàê çàìåñòèòåëü: %s",FracInfo[PlayerInfo[playerid][pMember]][fName]);
		if(PlayerInfo[playerid][pVIP] == true) SendClientMessage(playerid, COLOR_GREEN, "Âîçìîæíîñòè VIP àêêàóíòà àêòèâèðîâàíû, ïðèÿòíîé èãðû!");
		format(string, 64, "~w~Welcome ~n~~b~   %s", PlayerInfo[playerid][pSendername]);
		GameTextForPlayer(playerid, string, 3500, 1);
		PlayerPlaySound(playerid, 30800, 0.0, 0.0, 0.0);
		if (PlayerInfo[playerid][pText][0] == 1)
		{
			SendClientMessage(playerid, COLOR_YELLOW, "[ÊÂÈÒÀÍÖÈß] Âû çàáûëè îïëàòèòü çà êâàðïëàòó, âàø äîì ïðîäàëè!");
			SendClientMessage(playerid, COLOR_YELLOW, "[ÊÂÈÒÀÍÖÈß] Íà âàø áàíêîâñêèé ñ÷åò âîçâðàùåíà ñòîèìîñòü äîìà ïî ãîñ-âó");
			PlayerInfo[playerid][pText][0] = 0;
			format(PlayerInfo[playerid][pTexts], 20,  "%i, %i, %i", PlayerInfo[playerid][pText][0], PlayerInfo[playerid][pText][1], PlayerInfo[playerid][pText][2]);
			format(query, 256, "UPDATE "TABLE_ACCOUNT" SET text = '%s' WHERE name = '%s'", PlayerInfo[playerid][pTexts], PlayerInfo[playerid][pSendername]);
			mysql_query(query);
		}
		if(PlayerInfo[playerid][pText][1] == 1)
		{
			SendClientMessage(playerid, COLOR_YELLOW,"[ÍÀËÎÃÎÂÀß ÑËÓÆÁÀ] Âàø áèçíåñ çàêðûëè â ñâÿçè ñ íåõâàòêîé ðåñóðñîâ");
			SendClientMessage(playerid, COLOR_YELLOW,"[ÍÀËÎÃÎÂÀß ÑËÓÆÁÀ] Áþäæåò áèçíåñà çà÷èñëåí íà âàø áàíêîâñêèé ñ÷åò");
			PlayerInfo[playerid][pText][1] = 0;
			format(PlayerInfo[playerid][pTexts], 20, "%i, %i, %i", PlayerInfo[playerid][pText][0], PlayerInfo[playerid][pText][1], PlayerInfo[playerid][pText][2]);
			format(query, 256, "UPDATE "TABLE_ACCOUNT" SET text = '%s' WHERE name = '%s'", PlayerInfo[playerid][pTexts], PlayerInfo[playerid][pSendername]);
			mysql_query(query);
		}
		if(PlayerInfo[playerid][pText][2] == 1)
		{
			new p = PlayerInfo[playerid][pRefMoney] / 100000;
			for(new i = 1; i <= p; i++)
			{
				GiveMoney(playerid, 100000);
				PlayerInfo[playerid][pRefMoney] -= 100000;
			}
			PlayerInfo[playerid][pText][2] = 0;
			format(PlayerInfo[playerid][pTexts], 20, "%i, %i, %i", PlayerInfo[playerid][pText][0], PlayerInfo[playerid][pText][1], PlayerInfo[playerid][pText][2]);
			format(query, 256, "UPDATE "TABLE_ACCOUNT" SET text = '%s', refmoney WHERE name = '%s'", PlayerInfo[playerid][pTexts], PlayerInfo[playerid][pRefMoney], PlayerInfo[playerid][pSendername]);
			mysql_query(query);
		}
		if(PlayerInfo[playerid][pGunSkill][6] >= NORM_SKILLS_PLAYER) VehRe[playerid] = true;
		new str123[12];
		GetPlayerIp(playerid,str123,12);
		format(string, 64, "%s çàøåë â àêêàóíò ñ ip: %s",PlayerInfo[playerid][pSendername],str123);
		SetSpawnInfo(playerid, 255, PlayerInfo[playerid][pModel], 0, 0, 0, 1.0, -1, -1, -1, -1, -1, -1);
		SpawnPlayer(playerid);
		Log("LogInfo",string);
		DeletePVar(playerid,"Acc");
		SetPlayerInt(PlayerInfo[playerid][pSendername], "online", 1);
	}
	return true;
}
А вот функция регистрации(что при логине что при реге - крашит)

PHP:
stock CreateAccount(playerid, pass[])
{
	if(IsTextInvalid(pass)) return SendClientMessage(playerid,-1,"В пароле должны быть только буквы и цифры"),Kick(playerid);
	new ip[16],data[16];
	format(data, 16, "%s",date("%dd.%mm.%yyyy",gettime()));
	GetPlayerIp(playerid, ip, 16);
	new radio = random(sizeof(RADIO));
	format(query, 512, "INSERT INTO "TABLE_ACCOUNT" (name, password, ip, datareg, sex, model, news, mail, referal, spawnz) VALUES ('%s', '%s', '%s', '%s', %d , %d, %d, '%s', '%s', '%d')"
	, PlayerInfo[playerid][pSendername], pass, ip, data,PlayerInfo[playerid][pSex], PlayerInfo[playerid][pModel], radio, PlayerInfo[playerid][pMail], PlayerInfo[playerid][pReferal], PlayerInfo[playerid][pSpawnz]);
	mysql_query(query);
	LoadAccount(playerid);
	return true;
}
Ребят, прошу помощи.
Если получиться - постараюсь вознаградить.
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу