Вопросы

Доброго времени суток...

Моя проблема заключается в том, что в БД не записываются номера в БД.

Вот код и скриншоты БД:

	case D_VEHNUMBER+2:
		{
			if(!response) return 1;
			
			if(PI[playerid][PlayerCarID] == INVALID_VEHICLE_ID) return SendClientMessage(playerid, COLOR_RED, "Ñíà÷àëà íåîáõîäèìî çàãðóçèòü òðàíñïîðò â èãðó: /fixcar");
			
			if(strcmp(C_DATA[playerid][c_number], "None",true)) return SendClientMessage(playerid, COLOR_RED, "Ó Âàñ óæå èìåþòñÿ íîìåðà íà àâòîìîáèëå");
			if(nomercar[playerid] > gettime()) return SendClientMessage(playerid,COLOR_RED,""cER"Íîìåðà ìîæíî ñòàâèòü ðàç â 10 ìèíóò");
			
			mysql_tquery(dbHandle, "SELECT number FROM ownable_numbers f JOIN ( SELECT RAND( ) * ( SELECT MAX( id ) FROM ownable_numbers ) AS max_id) AS m WHERE f.id >= m.max_id AND is_used =0 ORDER BY f.id ASC LIMIT 1","DPSNumber_C","i",playerid);
		}
publics: DPSNumber_C(playerid)
{
	new r,f;
	cache_get_data(r,f);
	
	if(r == 0) return 1;
	
	new local_string[10];
	cache_get_field_content(0, "number", local_string, dbHandle, 10); 
	
	global_string = "";
	format(global_string, 120, "UPDATE `ownable_numbers` SET is_used = 1 WHERE number = '%s'",local_string);
	mysql_tquery(dbHandle, global_string,"", "");
	
	global_string = "";
	format(global_string, sizeof(global_string), "{FFFFFF}Ìåñòî ðåãèñòðàöèè: {63BD4E}Ïóíêò âûäà÷è íîìåðîâ{FFFFFF}\nÍîìåð âàøåãî àâòî: {63BD4E}%s", local_string);
	ShowPlayerDialog(playerid, D_NULL, DIALOG_STYLE_MSGBOX, "{"#cSV"}Ïîëó÷åíèå íîìåðà", global_string, "Çàêðûòü", "");
	foreach(new i: Player)
	{
		if(PlayerLogged[i] == false) continue;
		if(IsADps(i)) SendMes(i, 0x3399FFFF, "[Ïóíêò âûäà÷è íîìåðîâ] %s[%i] çàðåãèñòðèðîâàë íîìåð íà àâòî #1 [%s]", GetName(playerid), playerid, local_string);
	}
	new strings[74];
	format(strings, sizeof strings, "{78A94D}%s", local_string);
	strmid(C_DATA[playerid][c_number], local_string, 0, strlen(local_string), 64);
	TransferMoney(playerid, -1, 5000);
	nomercar[playerid] = gettime() + 300;
	if(VehicleLabel[PI[playerid][PlayerCarID]] != Text3D:INVALID_3DTEXT_ID) UpdateVehicleLabel(PI[playerid][PlayerCarID], 0xFFFFFFFF, strings);
	SetPlayerCarNumber(playerid);
	SavePlayerCar(playerid);
	return 1;
}
  Скриншоты (открыть спойлер)
  Скриншоты (открыть спойлер)

В моем случае  донат номера всё же работают, но их сохранение в `ownable_cars` `c_number`  

Вот код:

  Код (открыть спойлер)

 

Поделиться сообщением


Ссылка на сообщение

17 ответов на этот вопрос

  • 0

@Evgeha Games логи сервера и логи mysql скиньте

Поделиться сообщением


Ссылка на сообщение
  • 0

@DEST 

  спойлер (открыть спойлер)
[16:35:52 06/01/19] [WARNING] CMySQLResult::GetRowDataByName - field not found ("lot_status") (Query: "SELECT * FROM `other`")
[16:35:52 06/01/19] [ERROR] cache_get_field_content_int - invalid datatype
[16:35:52 06/01/19] [WARNING] CMySQLResult::GetRowDataByName - field not found ("lot_summ") (Query: "SELECT * FROM `other`")
[16:35:52 06/01/19] [ERROR] cache_get_field_content_int - invalid datatype
[16:35:52 06/01/19] [WARNING] CMySQLResult::GetRowDataByName - field not found ("lot_count") (Query: "SELECT * FROM `other`")
[16:35:52 06/01/19] [ERROR] cache_get_field_content_int - invalid datatype

 

Отредактировано пользователем odosenok
Причина: заключил код в тег "Спойлер".

Поделиться сообщением


Ссылка на сообщение
  • 0

В ф-ии DPSNumber_C замените свое начало

new r,f;
cache_get_data(r,f);

if(r == 0) return 1;

этим:

new r,f;
cache_get_data(r,f);

if(r == 0) return print("[#debug]: DPSNumber_C: rows=0");
printf("[#debug]: DPSNumber_C: rows=%d", r);

 

Затем зайдите в игру, попробуйте получить номера и скиньте логи после проделанных действий. 

Поделиться сообщением


Ссылка на сообщение
  • 0
  Лог MySql (открыть спойлер)
  Логи сервера (открыть спойлер)

 

Поделиться сообщением


Ссылка на сообщение
  • 0

@Evgeha Games судя по всему, номера для игроков должны быть созданы в БазеДанных, откуда они потом уже выдаются самому игроку. Поэтому поищите в моде все, что связано с ownable_numbers, там скорее всего должна быть какая-то команда создания этих самых номеров. 

Поделиться сообщением


Ссылка на сообщение
  • 0

@DEST Ничего такого не нашёл

 

Поделиться сообщением


Ссылка на сообщение
  • 0

@DEST

  Код (открыть спойлер)

 

Поделиться сообщением


Ссылка на сообщение
  • 0

Значит вручную попробуйте создать в самой БД какой-нибудь номер в таблице ownable_numbers. И проверьте, будут ли выдаваться номера. 

Адресовано @Дарвин, @Evgeha Games

Поделиться сообщением


Ссылка на сообщение
  • 0

@DEST Оказывается они вообще не выдаются...

Они должны как-то записываться в ownable_cars "c_number"

Поделиться сообщением


Ссылка на сообщение
  • 0

@Evgeha Games, не выдаются

@DEST не выдаются

Поделиться сообщением


Ссылка на сообщение
  • 0

Проделайте опять все то же самое, что указано в этом посте: https://pawno-rus.ru/topic/3799-problema-s-zapisyu-nomerov/?do=findComment&comment=14177

Поделиться сообщением


Ссылка на сообщение
  • 0

@DEST, нет. Номера не выдаются

Поделиться сообщением


Ссылка на сообщение
  • 0

@Дарвин Внимательно прочитайте пост.

  В 6/1/2019 в 19:37, DEST сказал:

Затем зайдите в игру, попробуйте получить номера и скиньте логи после проделанных действий. 

Читать далее...  

 

Поделиться сообщением


Ссылка на сообщение
  • 0

@DEST, всё  проделано. вот логи - 

[22:30:42] Darvin_Channel | 73 | 73
[22:30:57] [#debug]: DPSNumber_C: rows=0
[22:57:24] [WARNING] CMySQLResult::GetRowDataByName - field not found ("lot_status")
[22:57:24] [ERROR] cache_get_field_content_int - invalid datatype
[22:57:24] [WARNING] CMySQLResult::GetRowDataByName - field not found ("lot_summ")
[22:57:24] [ERROR] cache_get_field_content_int - invalid datatype
[22:57:24] [WARNING] CMySQLResult::GetRowDataByName - field not found ("lot_count")
[22:57:24] [ERROR] cache_get_field_content_int - invalid datatype
[22:58:13] [ERROR] CMySQLQuery::Execute[] - (error #1146) Table 'amina-rp.logs' doesn't exist
[23:00:02] [WARNING] CMySQLResult::GetRowDataByName - field not found ("lot_status")
[23:00:02] [ERROR] cache_get_field_content_int - invalid datatype
[23:00:02] [WARNING] CMySQLResult::GetRowDataByName - field not found ("lot_summ")
[23:00:02] [ERROR] cache_get_field_content_int - invalid datatype
[23:00:02] [WARNING] CMySQLResult::GetRowDataByName - field not found ("lot_count")
[23:00:02] [ERROR] cache_get_field_content_int - invalid datatype
[23:04:48] [WARNING] CMySQLResult::GetRowDataByName - field not found ("lot_status")
[23:04:48] [ERROR] cache_get_field_content_int - invalid datatype
[23:04:48] [WARNING] CMySQLResult::GetRowDataByName - field not found ("lot_summ")
[23:04:48] [ERROR] cache_get_field_content_int - invalid datatype
[23:04:48] [WARNING] CMySQLResult::GetRowDataByName - field not found ("lot_count")
[23:04:48] [ERROR] cache_get_field_content_int - invalid datatype
[23:07:46] [ERROR] CMySQLQuery::Execute[] - (error #1146) Table 'amina-rp.logs' doesn't exist
[23:09:37] [ERROR] CMySQLQuery::Execute[] - (error #1146) Table 'amina-rp.logs' doesn't exist
[22:24:45] [WARNING] CMySQLResult::GetRowDataByName - field not found ("lot_status")
[22:24:45] [ERROR] cache_get_field_content_int - invalid datatype
[22:24:45] [WARNING] CMySQLResult::GetRowDataByName - field not found ("lot_summ")
[22:24:45] [ERROR] cache_get_field_content_int - invalid datatype
[22:24:45] [WARNING] CMySQLResult::GetRowDataByName - field not found ("lot_count")
[22:24:45] [ERROR] cache_get_field_content_int - invalid datatype
[22:29:26] [ERROR] CMySQLQuery::Execute[] - (error #1146) Table 'amina-rp.logs' doesn't exist
[22:29:41] [ERROR] CMySQLQuery::Execute[] - (error #1146) Table 'amina-rp.logs' doesn't exist
[22:30:36] [ERROR] CMySQLQuery::Execute[] - (error #1146) Table 'amina-rp.logs' doesn't exist

 

Поделиться сообщением


Ссылка на сообщение
  • 0

@Evgeha Games, я так полагаю этот сервер слит где-то? Если да, оставьте, пожалуйста, ссылочку на него.

Поделиться сообщением


Ссылка на сообщение
  • 0

@odosenok, Скинул в ЛС

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • Talex
      От Talex
      Игровой сервер Life Game RolePlay
      Скачать файл Игровой сервер Life Game RolePlay
      Добавил Talex Добавлено 28.01.2024 Категория Моды Автор Неизвестно  
    • Talex
      От Talex
      Игровой сервер Life Game RolePlay
    • Владислав2
      От Владислав2
      Здравствуйте, при компиляции появляется ошибка,

      Ошибка:
      error 017: undefined symbol "REP_KUZIA_TD"

      Строки:
       
          REP_KUZIA_TD[0] = TextDrawCreate(7.499990, 314.444396, "REP: 1");
          TextDrawLetterSize(REP_KUZIA_TD[0], 0.400000, 1.600000);
          TextDrawAlignment(REP_KUZIA_TD[0], 1);
          TextDrawColor(REP_KUZIA_TD[0], -1);
          TextDrawSetShadow(REP_KUZIA_TD[0], 0);
          TextDrawSetOutline(REP_KUZIA_TD[0], 1);
          TextDrawBackgroundColor(REP_KUZIA_TD[0], 255);
          TextDrawFont(REP_KUZIA_TD[0], 1);
          TextDrawSetProportional(REP_KUZIA_TD[0], 1);
          TextDrawSetShadow(REP_KUZIA_TD[0], 0);
          REP_KUZIA_TD[1] = TextDrawCreate(6.249957, 330.518493, "ASK: 0");
          TextDrawLetterSize(REP_KUZIA_TD[1], 0.400000, 1.600000);
          TextDrawAlignment(REP_KUZIA_TD[1], 1);
          TextDrawColor(REP_KUZIA_TD[1], -1);
          TextDrawSetShadow(REP_KUZIA_TD[1], 0);
          TextDrawSetOutline(REP_KUZIA_TD[1], 1);
          TextDrawBackgroundColor(REP_KUZIA_TD[1], 255);
          TextDrawFont(REP_KUZIA_TD[1], 1);
          TextDrawSetProportional(REP_KUZIA_TD[1], 1);
          TextDrawSetShadow(REP_KUZIA_TD[1], 0);
          return 1;
      }

      Буду рад если кто-то поможет