05:39
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
        
[SA-MP] Hosted Tab (120)
DieSeL 24.09.2017 20:30
GTA IV Mod Installer (5)
jasper2 23.09.2017 02:50
 





Рекомендуем:
Добавить IP: 95.172.59.51:7777





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
Скачать GTA SAMP 0.3.7 - Кл... 20.07.2015
Страница 1 из 212»
Модератор форума: AXE, Weddew 
Форум SAMP о мультиплеерах для GTA. » SAMP скачивание и обсуждение » Вопросы и Проблемы » Help me[MySQL]
Help me[MySQL]
MckenzyДата: Суббота, 29.09.2012, 20:08 | Сообщение # 1
Советчик
Группа: I'm V.I.P.
Сообщений: 1212
Награды: 130
Город: Ярославль
Репутация: 2125
Замечания: 80%
Статус:
Вообщем суть такова, пишу команду удаления авто, которая будет смещать все ID в таблице на -1, т.е допустим идут машинки по порядку (auto_increment) 1 2 3 4 5, и если я удаляю 3, то последующие, т.е 4 и 5 смещаются на -1.
Вот код, до которого додумался, но как смещать ид на -1, не довариваю.
Code
if(strcmp(cmd, "/deletecar", true) == 0)  
     {  
         new destroycar, sql[256], carid;  
          destroycar = GetPlayerVehicleID(playerid);  
          carid = GetPlayerVehicleID(playerid);  
          if(GetPlayerState(playerid)==PLAYER_STATE_DRIVER)  
         {  
               DestroyVehicle(destroycar);  
               for( new i = CarInfo[carid][id]; i < MAXVEHICLES; i++ )  
             {  
                 format(sql, sizeof(sql), "DELETE FROM `carinfo` WHERE `ID` = %d LIMIT 1", CarInfo[carid][id]);  
                 return mysql_query(sql);  
             }  
         }  
     }  

DrevenДата: Суббота, 29.09.2012, 20:28 | Сообщение # 2
Гуру
Группа: Продвинутые
Сообщений: 1094
Награды: 205
Город: od.ua
Репутация: 1099
Замечания: 0%
Статус:
Mckenzy, автоинкримент вроде нельзя изменить, видел кто-то делал сток чтобы находить свободный id


www.samp-rpg.com
FiLEДата: Суббота, 29.09.2012, 21:42 | Сообщение # 3
Группа: Разработчики
Сообщений: 679
Награды: 70
Город: Днепропетровск
Замечания: 0%
Статус:
Quote (Mckenzy)
смещать все ID в таблице на -1

Я бы сделал так: после того, как удаляем запись о машине, делаем следующее...: узнаем сколько строк в таблице => циклом проходим и выбираем те тачки у которых ID больше чем CarInfo[carid][id] => и выбранную запись апдатим id-1. Потом нужно же еще все записи CarInfo[carid][id] тоже апдатить в моде (обновить).




DrevenДата: Суббота, 29.09.2012, 22:06 | Сообщение # 4
Гуру
Группа: Продвинутые
Сообщений: 1094
Награды: 205
Город: od.ua
Репутация: 1099
Замечания: 0%
Статус:
FiLE, даже если ты поставишь ид 4, автоинкримент поставит столько сколько он считает нужным xD вообщем ты понял =D


www.samp-rpg.com
FiLEДата: Суббота, 29.09.2012, 22:36 | Сообщение # 5
Группа: Разработчики
Сообщений: 679
Награды: 70
Город: Днепропетровск
Замечания: 0%
Статус:
Dreven, ты пробовал изменять иды в таблицах через phpmyadmin? Попробуй. В теме идет речь о смещении уже существующих записей. Если создавать запись, то это тоже можно учесть и установить нужный ид, путем update записи.





Сообщение отредактировал FiLE - Суббота, 29.09.2012, 22:37
MckenzyДата: Суббота, 29.09.2012, 22:46 | Сообщение # 6
Советчик
Группа: I'm V.I.P.
Сообщений: 1212
Награды: 130
Город: Ярославль
Репутация: 2125
Замечания: 80%
Статус:
На оффе говорят, что категорически запрещается изменять инкремент, может нарушиться структура БД O_o
[RD]ChezДата: Суббота, 29.09.2012, 23:49 | Сообщение # 7
Мастер джэдай
Группа: Продвинутые
Сообщений: 3687
Награды: 206
Город: St. P
Репутация: 0
Замечания: 20%
Статус:
а зачем тебе использовать уникальный ид для динамических расчетов?
используй many to many и one to many

Добавлено (29.09.2012, 23:49)
---------------------------------------------
да и вообще в базе должны храниться данные статические
а на сервере в массиве зранить как ключ массива ид машины а одно из полей значения по ключу будет хранить инкрементный ид


1 час моей работы стоит минимум 800 рублей для срочных работ.
Знаю CodeIgniter, Kohana, втч. кастом(php), Вникаю в Yii. jQuery на должном уровне, немного разбираюсь в RightJS.
Алсо, 6 лет павно, 2 года в шарпе, понимаю си и плюсы.
Немного ассемблер.
Ох**тельный верстальщик какб.

Если ваш заказ потребует неделю работы и вы собираетесь заплатить 100 рублей - лес там ->> ^^^^^

chezrd@gmail.com
lance@chez-lab.ru
IInkvizitorДата: Воскресенье, 30.09.2012, 03:00 | Сообщение # 8
Советчик
Группа: I'm V.I.P.
Сообщений: 1177
Награды: 7
Город: Санкт-Петербург
Репутация: 493
Замечания: 0%
Статус:
О боже... Обходить всю таблицу чтобы изменить поле?
MckenzyДата: Воскресенье, 30.09.2012, 16:17 | Сообщение # 9
Советчик
Группа: I'm V.I.P.
Сообщений: 1212
Награды: 130
Город: Ярославль
Репутация: 2125
Замечания: 80%
Статус:
IInkvizitor, смотри какая ситуация. На сервере, ид у машины равен 2, и при апдейте в дебаге WHERE `ID` = 2, вроде все хорошо. Но стоит допустим из трех тачек удалить одну (из трех вторую), то следующая созданная занимает ее место на сервере, а в таблице уже 4 ид (ибо инкремент пробелы в порядковой последовательности не забивает, а так и херачит +1). Как тут быть?
zEscДата: Воскресенье, 30.09.2012, 16:41 | Сообщение # 10
Global Elite
Группа: Ангел Хранитель
Сообщений: 895
Награды: 20
Репутация: 856
Замечания: 0%
Статус:
Mckenzy, не используи инкримент например, сам формируй ид


MckenzyДата: Воскресенье, 30.09.2012, 16:50 | Сообщение # 11
Советчик
Группа: I'm V.I.P.
Сообщений: 1212
Награды: 130
Город: Ярославль
Репутация: 2125
Замечания: 80%
Статус:
Escalante, ну а как например?
zEscДата: Воскресенье, 30.09.2012, 17:27 | Сообщение # 12
Global Elite
Группа: Ангел Хранитель
Сообщений: 895
Награды: 20
Репутация: 856
Замечания: 0%
Статус:
создаёшь переменную в массиве, когда в массив добавляешь инфо о тачке, приравниваешь её еденице, а потом при сохранении смещаешь. Пишу с телефона, мог неправильно выразится

Добавлено (30.09.2012, 17:27)
---------------------------------------------
Посмотри валакас тракер там так реализовано


MckenzyДата: Воскресенье, 30.09.2012, 20:09 | Сообщение # 13
Советчик
Группа: I'm V.I.P.
Сообщений: 1212
Награды: 130
Город: Ярославль
Репутация: 2125
Замечания: 80%
Статус:
Quote (Escalante)
Посмотри валакас тракер там так реализовано

Да где ты там такое увидел?

Kw33ckДата: Воскресенье, 30.09.2012, 21:33 | Сообщение # 14
Местный
Группа: Продвинутые
Сообщений: 620
Награды: 8
Город: Empire Bay
Репутация: 1405
Замечания: 60%
Статус:
Mckenzy, если ты непротив, я немножко пооффтоплю.
Почитал тут твой лог разработки и у меня возник вопрос, нафига ты переписываешь заного уже изобретенные системы?
Смысл писать моды с нуля был не в том, что ты переписывал код вручную, а в том, что изобреталось нечто новое.
Ты просто себя переутруждаешь лишний раз и бестолку.



>>> Внимание: GTA 5 Online на пиратке! <<<

>>> Внимание: Mafia 2 Multiplayer ВКонтакте! <<<

Мои завистники:
1 место - Eakwarp (постоянная зависть в сторону моих успехов и уровня развития) - Стаж > 4х лет!
2 место - PeRaN (подлиза, признавшая моё превосходство, но не желающая что-либо исправлять по моим советам) - Стаж > 3х лет!
3 место - Тут можешь оказаться ты!
MckenzyДата: Воскресенье, 30.09.2012, 21:51 | Сообщение # 15
Советчик
Группа: I'm V.I.P.
Сообщений: 1212
Награды: 130
Город: Ярославль
Репутация: 2125
Замечания: 80%
Статус:
Kw33ck, уникальность проекта будет заключаться немного в другом. Простота и минимализация основных систем (дома, бизнесы и машины) это даже хорошо скорее, чем плохо. А вырезать из чужих модов я все равно ничего не буду, легче самому.


Сообщение отредактировал Mckenzy - Воскресенье, 30.09.2012, 21:51
Форум SAMP о мультиплеерах для GTA. » SAMP скачивание и обсуждение » Вопросы и Проблемы » Help me[MySQL]
Страница 1 из 212»
Поиск:





 


 


 
Хостинг от uCoz SAMP-RUS.COM