id44474404 id44474404

В Княжествах Онлайн снова появились анимации, они синхронизируются с сервером и работают реалистично, т.е. нанесение урона или получение ресурсов происходит в тот момент, когда это соответствует анимации...

...
TheDarkestRed TheDarkestRed

Экспериментируем с рэгдолами 🎮🧟🤺🐺

lehha95 lehha95

Открыли страницу в Steam! Добавляйте в список желаемого!

https://store.steampowered.com/app/1355780/

romandviski romandviski

Спасибо, добрый человек.

Rummy_Games Rummy_Games

Доброго субботнего вечера! Сегодня мы поделимся с вами видео процесса разработки одного из противников (“Роя”) в нашей игре, в рамках #saturdayscreenshot, а также кратко делимся ЛОРом игры.

...
id44474404 id44474404

Всем привет!
Функционал авторитарного сервера продолжает восстанавливаться до уровня, который был на фотон клауде. На этой неделе стало возможным убийство мобов, и получение с них опыта, и прокачка персонажа...

...
Jusper Jusper

В GMS сильно поменялась структура функционала, но не все корректно мигрируется из старых проектов. Если тебе не критичны новинки, то переходить на него стоит только с новым проектом.

Kazirath Kazirath

Насколько я понял проще установть последнюю версию перед 2.3 и продолжить работать под ней. Новинка не стоит свеч после переделки скриптов

Kazirath Kazirath

Это совсем не радостная новость. Меня вполне устраивал функционал старой работы скриптов и я даже выработал некоторую систему, которая позволяла через скрипты настраивать работу объектов и прочего. Принудительная же переделка в функции у меня не сработает из за структур некоторых скриптов...

...
alexprey alexprey

Учитывая то, что написано в данной статье обратно включить это не получится и придется действительно обернуть код скриптов в функции.

Кратко из документации:

  • Раньше скрипты были индивидуальными и изолированными
  • ...
  • ...
  • ...
  • ...
...
PallSwarrow PallSwarrow

Спасибо за комменты, оч приятно)
Про ссылку тупанул - пока разбираюсь с сайтом)

alexprey alexprey

Жду линк на потестить и следующий девлог о разработке)

Jusper Jusper

Если есть прототип, было бы здорово выложить на него ссылку.
Не хватает игровых скриншотов.

Jusper Jusper

Raised, оригинал на Eurogamer.
Скорее всего, ирония.

Raised Raised

Это была такая ирония или Фортнайт тогда действительно был небольшим проектом?

id44474404 id44474404

alexprey, спасибо !)

alexprey alexprey

id44474404, поставить курсор на нужное место и у картинки нажать "вставить"

id44474404 id44474404

alexprey, в тех публикациях были были в перемешку слова и фотки, я докинул несколько скринов, но их нигде не видно, как добавить фотографии ?

alexprey alexprey

id44474404, ага, больше информации -> больше обсуждения да и в целом понимания о проекте)
В любом случае, добро пожаловать!))

id44474404 id44474404

Хм, больше инфы?) Ок

Логотип проекта Программирование

Записи в базу данных не добавляются, хотя запрос успешен.

Поздавьте меня, я набыдлокодил до нетривиальной ошибки.

Когда я пытаюсь добавить записи в таблицу, запрос никаких ошибок не возвращает, однако в базе данных записи отсутствуют. Но так бывает не со всеми INSERT'ами — на некоторых страницах INSERT'ы работают. Также, если в PHPMyAdmin принудительно ввести любой запрос, он выполнится без нареканий. Запросы выборки работают. Проблема в PHP.

//... класс ответственный за запросы к БД ...
	public function testInsertion ( ) {
		if ($this->link) {
			$stmt = $this->prepareStatement('isrtPrdct', "INSERT INTO `test` (`entry`) VALUES ('test');#");
			if ($stmt->execute( )) {
				printf('Success.');
			} else {
				printf('Failure.');
			}
		} else {
			printf('Failure.');
		}
	}
	
	public function checkInsertion ( ) {
		if ($this->link) {
			$stmt = $this->prepareStatement('checkIsrt', "SELECT * FROM `test` WHERE `entry`='test';#");
			if ($stmt->execute( )) {
				$stmt->bind_result($result);
				do {
					printf('result: \''.$result.'\'');
				} while ($stmt->fetch( ));
			} else {
				printf('Failure.');
			}
		} else {
			printf('Failure.');
		}
	}
//...

Если на одной странице выполнить обе функции, то они вернут 'Success' и 'result: 'test'' соответсвенно. Если функции будут вызваны на разных страницах, то checkInsertion вернёт пустую строку, т. к. в БД ничего не добавляется (хотя по задумке должно).

Я так себе думаю, что проблема в подключении к БД, в закрытии подготовленных запросов или чём-то в подобном. Конечно, я пробовал и непараметизированные запросы $mysqli->query($sql).

Что на Denver'е, что на сервере проблема одинаковая.

В сети встречаются подобные вопросы , но внятного решения я не отыскал. Большинство пишет, что проблема решилась сама собой.

Ответ

В общем вижу 2 причины. Это либо ты открываешь соединение не с основной базой, а какой нибудь внутренней и он все данные пишет в память (поэтому на одной странице и работает). Либо что-то типа отложенной записи. Возможно надо просто подтвердить изменения с помощью commit. Например, на оракле можно делать подтверждение и откат изменений.

Смотрите также:


Комментарии



Если вызывать на разных страницах, то разумеется создадутся два экземпляра класса, которые ну вообще ничем никак не связанны. связать их можно _только_ post|get'ами.
Скрипт, когда пхп его начинает выполнять, ничего о других скриптах не знает.

Mihahail,

Перешел с MySQLi на PDO вместе с постоянным соединением. Работает. Работает из-за того, что постоянне соединение, или из-за того, что PDO?

Я сказал глупость в первом сообщении. Точнее вещь, не относящуюся к теме.

С пдо не работал, только с mysql, но по-видимому из-за постоянного соединения. Могу и ошибаться, так вот: http://www.php.net/manual/ru/pdo.connections.php
По сабжу, да, во-первых, надо закрывать соединение(хотя само должно), во вторых, может кеширование?

Нет коннекшен закрывать не надо, он сам закроется когда скрипт закончит выполнени.

INSERT INTO `test` (`entry`) VALUES ('test');#

Попробуй без ;#. Обычно в таких штуках не требуется завершающий символ

Mihahail,

Уже не раз перечитывал. Мало знать основы, чтобы оптимально работать с БД.

alexprey,

Пробовал.

В общем вижу 2 причины. Это либо ты открываешь соединение не с основной базой, а какой нибудь внутренней и он все данные пишет в память (поэтому на одной странице и работает). Либо что-то типа отложенной записи. Возможно надо просто подтвердить изменения с помощью commit. Например, на оракле можно делать подтверждение и откат изменений.

alexprey,

Вероятно Вы правы на счет фиксации. У меня была отключена автоматическая фиксация.

Транзакций в MySQLi вроде бы нет, зато есть в PDO.

Возможность добавлять комментарии была ограничена