Скорее это относится не к AUTO_INCREMENT, а к Primary Key и Unique полям.
Вообще дублировать какую-либо информацию в MySQL стоит минимально. Это банально избавит от нужды контролировать актуальность этой самой информации.
А получить ID дома при загрузке можно не двумя отдельными запросами, а поместив запрос в запрос, а-ля:
В итоге просто выгружаешь аккаунт так же, как и выгружал, только помимо этого ещё обрабатываешь "owned_house"PHP код:
SELECT a.*,IFNULL((SELECT h.id FROM house AS h WHERE a.id = h.owner_id LIMIT 1), -1) AS owned_house FROM account AS a WHERE player_name = 'Тут-Ник' LIMIT 1
Не думаю, что автор изучал документацию на эту тему, поэтому максимально постарался упростить :) phpMyAdmin обычно сразу устанавливает для поля параметр "Primary Key", когда выбиваешь "AUTO_INCREMENT"PHP код:
cache_get_value_name_int(0, "owned_house", /*Переменная с ID дома*/);
Как я уже писал ранее, детали были специально упущены. Я описывал лишь конкретную ситуацию, которая имеет отношение к вопросу автора, дабы он понимал ровно столько, сколько нужно для его ситуации. Вдаваться в подробности и рассказывать про индексы смысла особого нет, ибо без хотя бы минимального базиса эта информация ничего не даст автору. А с учётом того, что в SA-MP вообще редко кто осознанно пользуется возможностями MySQL, эта информация может стать просто не востребованной.
Чему равно значение INVALID_ITERATOR_SLOT?
У меня, видимо, очень старая версия foreach, поэтому выдаёт варнинги. :blush2:
Это макрос из y_foreach, а у тебя, видимо, обычный foreach :) Замени INVALID_ITERATOR_SLOT на ITER_NONE
P.S. Обновил свой код.
А в чем отличие между y_foreach и foreach?
y_foreach - часть библиотеки YSI (имеет зависимости от других инклудов библиотеки)
foreach - аналог y_foreach, только без зависимостей (то бишь, реализован как отдельный инклуд)
Точнее, сейчас уже не аналог, но отличия у них не существенные.
Получается так, что лучше использовать y_foreach вместо foreach, верно?
Если да, то как его подключать в мод?
(В мобильной версии сайта не вижу BB-кодов, поэтому так)
#include <YSI/YSI_Data/y_foreach ?
(Слеш в другую сторону только).
Если в моде используешь YSI, то логичнее пользоваться и y_foreach. Правда не уверен, что так просто всё заработает, ибо синтаксис у функций может отличаться.
Ну да. Хотя стоит проверить, может он подключается автоматически (просто попробуй вызвать одну из функций, которые находятся внутри инклуда)