![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| supercelt |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 658 Регистрация: 25.8.2005 Репутация: нет Всего: 1 |
Есть проект. Таблица из 250 ячеек. 5 ячеек в одной стоке. Туда люди помещают рекланмый баннер. Выбирают понравившуюся ячейку. В БД это выглядит примерно так:
id banner cell 1 b1.jpg 3 2 b2.gif 28 3 b3.png 105 Таблица генерится так:
Так вот логично в каждой итерации(это одна ячейка) делать запрос к бд и смотреть есть ли там запись где $i == значению из поля cell. Но это получится 250 запросов менее чем за 1 сек. Это может создать нагрузку на сервер БД. Как можно это организовать попроще? |
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 1 Всего: 32 |
запросить сразу все строки одним запросом?
|
|||
|
||||
| supercelt |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 658 Регистрация: 25.8.2005 Репутация: нет Всего: 1 |
А как их потом в цикле прогнать и сравнивать все только с одной $i а потом все со следующей $i. Может весь результ помесить как-то в массив и уже работать с ним? |
|||
|
||||
| Feldmarschall |
|
|||
|
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 1 Всего: 32 |
как хочешь. но учитывая, что помещать в массив ты будешь все равно в цикле...
|
|||
|
||||
| skyboy |
|
||||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 14 Всего: 260 |
да ну ладно. у тебя массив, где ключ массива - cell из БД, а значением - соотвествующий баннер. формируется примерно так:
|
||||
|
|||||
| supercelt |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 658 Регистрация: 25.8.2005 Репутация: нет Всего: 1 |
Спасибо, но чего-то не работает. В бд прописано что 2 баннера стоят в ячейках 23, 25. А выводит что они в 3 и 5 ?????????
Добавлено через 8 минут и 10 секунд О, я кажется разобрался. Дело вот в чём. Тут к примеру я написал что полей в базе основных 2, но их больше и надо извлекать всю инфу (*). Как тогда запишется эта строчка? )
|
|||
|
||||
| mishaSL |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1046 Регистрация: 10.1.2007 Где: Санкт-Петербург Репутация: 7 Всего: 54 |
Сделать многомерный массив:
Только у вас поле cell в БД уникальное? -------------------- Лучший способ научиться программированию - это посмотреть как это делают другие... |
||||
|
|||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 14 Всего: 260 |
||||
|
||||
| supercelt |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 658 Регистрация: 25.8.2005 Репутация: нет Всего: 1 |
Я сделал вот так, вроде всё работает)
|
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Базы Данных | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |