Проблема с MySQL: не сохраняет дома в БД.
#1

Дома добавляются в базу данных, но после покупки не сохраняются. В команде для покупки есть строка для сохранения дома SaveHouse(h); Добавляются из игры командой.
Сток сохранения:
Pastebin

Буду благодарен любой помощи и советам.
Reply
#2

А дебагить пробовал?

PS если ты не знаешь как это и что это мне больше не о чем с тобой разговаривать. О том как производить самый простой дебаг программист должен знать в первую очередью.
Reply
#3

Возможно что размера строки не хватает, попробуйте увеличить размер массива sql.

И зачем вам mysql_free_result после UPDATE запроса?
Reply
#4

Quote:
Originally Posted by TRPG
Посмотреть сообщение
И зачем вам mysql_free_result после UPDATE запроса?
А вы думаете UPDATE запрос не возвращает результатов?
Меня вот больше смутил LIMIT в данном запросе.
Reply
#5

Для запросов SELECT, SHOW, DESCRIBE, EXPLAIN и других запросов, возвращающих результат из нескольких рядов, mysql_query() возвращает дескриптор результата запроса (resource), или FALSE в случае ошибки.

Для других типов SQL-запросов, INSERT, UPDATE, DELETE, DROP и других, mysql_query() возвращает TRUE в случае успеха и FALSE в случае ошибки.
Reply
#6

Quote:
Originally Posted by Stepashka
Посмотреть сообщение
А дебагить пробовал?

PS если ты не знаешь как это и что это мне больше не о чем с тобой разговаривать. О том как производить самый простой дебаг программист должен знать в первую очередью.
Если Вы о mysql_debug, то да, я попробовал. В логе было UPDATE 'houses', но в базу не записало владельца(owner). Вот что в mysql_log.txt.
Буду очень благодарен, если кто-то поможет.
Reply
#7

Quote:
Originally Posted by The_Creator
Посмотреть сообщение
Если Вы о mysql_debug
нет.
Reply
#8

Quote:
Originally Posted by The_Creator
Посмотреть сообщение
Если Вы о mysql_debug, то да, я попробовал. В логе было UPDATE 'houses', но в базу не записало владельца(owner). Вот что в mysql_log.txt.
Буду очень благодарен, если кто-то поможет.
Код:
[17:20:18] CMySQLHandler::Query(UPDATE `houses` SET `Owned`='0',`Entrancex`='1468.605',`Entrancey`='-906.184',`Entrancez`='54.835',`Exitx`='2196.849',`Exity`='-1204.128',`Exitz`='1049.023',`Owner`='The State',`ROwner`='None',`Discription`=' Test house',`Value`='75000',`Hel`='0',`Arm`='0',`Int`='6',`Lock`='0',`Rooms`='6',`Type`='2',`Rent`='0',`Rentabil`='0',`Takings`='0',`Mats`='0',`Drugs`='0',`Virtual`='2' WHERE `ID` = '6') - An error has occured. (Error ID: 1054, Unknown column 'Arm' in 'field list')
Похоже что в вашей таблице нет поля Arm. Из-за этого запрос не выполняется.

И уберите mysql_free_result из функции SaveHouse, вон ваша база ругается на него: [17:20:56] CMySQLHandler::FreeResult() - The result is already empty.
Reply
#9

Quote:
Originally Posted by TRPG
Посмотреть сообщение
Код:
[17:20:18] CMySQLHandler::Query(UPDATE `houses` SET `Owned`='0',`Entrancex`='1468.605',`Entrancey`='-906.184',`Entrancez`='54.835',`Exitx`='2196.849',`Exity`='-1204.128',`Exitz`='1049.023',`Owner`='The State',`ROwner`='None',`Discription`=' Test house',`Value`='75000',`Hel`='0',`Arm`='0',`Int`='6',`Lock`='0',`Rooms`='6',`Type`='2',`Rent`='0',`Rentabil`='0',`Takings`='0',`Mats`='0',`Drugs`='0',`Virtual`='2' WHERE `ID` = '6') - An error has occured. (Error ID: 1054, Unknown column 'Arm' in 'field list')
Похоже что в вашей таблице нет поля Arm. Из-за этого запрос не выполняется.

И уберите mysql_free_result из функции SaveHouse, вон ваша база ругается на него: [17:20:56] CMySQLHandler::FreeResult() - The result is already empty.
Действительно пропустил, не углядел как то. Спасибо большое за помощь и советы.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)