Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Помогите с логикой [2]
Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006 Откуда: Israel
Помог: 3 раз(а)
Можно, только
- Место в БД
- Требование обновлять одновременно и БД и название картинок при изминениях
- Да и вообще просто загрузиьт картинку лечге чем загрузить, потом входить в pma и чтото делать
- Я нахожу более удобным хранить xxx.7.jpg на сервере, потому что потом понятней что за файл
- Ещё не факт что файл действительно находится на сервере если он прописан в БД.
- Скорость выполнения. Хотя база должна быть быстрее, но учитывая предыдущий пунт..
Хотя с другой стороны в базе тоже можно
----- Truly yours, Sasha.
EuGen
Отправлено: 19 Января, 2008 - 14:38:21
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
-ну, это ерундовый объем, мы же не храним в базе картинки, только их имена
-еще пара строк в коде
-pma не потребуется, при удалении/изменении картинки изменяем и строки в таблице
-с этим согласен, так удобнее
-если не лежит на сервере, то делаем имя в виде полной ссылки и все
-если картинка не лежит на сервере, то придется без БД сильно изгаляться, соответственно вряд ли, что картинок не на сервере будет много => скорость на БД будет выше
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
valenok
Отправлено: 19 Января, 2008 - 14:53:38
Здесь могла бы быть ваша реклама
Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006 Откуда: Israel
Помог: 3 раз(а)
Вроде бы все файлы на сервере.
Цитата:
- Требование обновлять одновременно и БД и название картинок при изминениях -
- еще пара строк в коде
Не очень понял.
Я так понимаю что нарисовали ещё картинку для данного товара
мы её заливаем на сервер через ftp и всё.
Цитата:
-pma не потребуется, при удалении/изменении картинки изменяем и строки в таблице
А строки в таблице как изменять если зашёл по ftp, удалил картинку и всё.
Тут минус будет с тем что если лежат на сервере картинки
xxx.1.jpg xxx.2.jpg xxx.3.jpg
и я удалю вторую, то третюю уже не покажет ..
----- Truly yours, Sasha.
EuGen
Отправлено: 19 Января, 2008 - 14:59:58
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
Аа.. через ftp - да, проблемно, я то думал через админку - скрипт какой-нибудь.
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
Dastar
Отправлено: 19 Января, 2008 - 15:10:00
Частый гость
Покинул форум
Сообщений всего: 199
Дата рег-ции: Янв. 2008 Откуда: Израиль
Помог: -6 раз(а)
Легче простого написать скриптик, задача которого будет загружать картинку, изменять ее название и удалять, и тогда никаких проблем.
А если все-таки страшно, что картинка не существует, то просто делаешь проверку (открываешь эту самую картинку) и если тебе возвращается значение false то заменяешь эту картинку на картинку no.jpg
----- Не знаешь - молчи.
Andrey
Отправлено: 20 Января, 2008 - 15:24:20
Новичок
Покинул форум
Сообщений всего: 58
Дата рег-ции: Май 2007
Помог: -1 раз(а)
valenok пишет:
Вот и запишите file_exist в цикле.
Может пока будете писать - появятся идеи что делать с file_exist. (Добавление)
p.s. Сколько конструкций циклов в php ?
Советую познакомиться со всеми
Мне известны только 3: while, do..while и for.
Я так понимаю, в моём случае подходят только while или do..while.
Но придумать условия не могу.
Andrey
Отправлено: 30 Января, 2008 - 23:06:18
Новичок
Покинул форум
Сообщений всего: 58
Дата рег-ции: Май 2007
Помог: -1 раз(а)
Andrey пишет:
Интернет магазин. К каждому товару есть несколько картинок в формате XXXX.1.jpg, XXXX.2.jpg .... XXXX.n.jpg. То есть картинок максимум n штук, минимум - может ни одной небыть. В каталоге товара показывается картинка XXXX.1.jpg, а в карточке товара показываются все картинки ( от XXXX.1.jpg до XXXX.n.jpg). Если картинки XXXX.1.jpg на сервере нет, то вместо этой картинки картинка с надписью нет изображения (no.jpg).
Вопрос такой: как описать логику, чтобы скрипт если не находит картинку XXXX.1.jpg, подставлял в каталог картинку XXXX.2.jpg, если не находил, её, то XXXX.3.jpg и т.д. перебирал до n. И только если скрипт ненайдёт ни одной картинки с имененами от XXXX.1.jpg до XXXX.n.jpg, то подставлял кактинку no.jpg.
В карточке товара структура таблицы, где первый столбец - картинки, а второй описания и т.п. Как описать логику, чтобы скрипт подсчитавал, сколько есть картинок (например XXXX.1.jpg, XXXX.2.jpg = 2 картинки; XXXX.3.jpg = 1 картинка; XXXX.2.jpg, XXXX.7.jpg, XXXX.10.jpg = 3 картинки). Это надо для формирования количества строк таблицы.
Поставим вопрос по-другому.
Для каждого товара есть какое-то количество картинок от XXXX.1.jpg до XXXX.n.jpg.
Как узнать чему равно n?
Можно использовать цикл на проверку существования файла, например while. Но какое придумать условие? Я так понимаю, что можно задать шаблон XXXX.*.jpg, но не получается у меня
Покинул форум
Сообщений всего: 199
Дата рег-ции: Янв. 2008 Откуда: Израиль
Помог: -6 раз(а)
Получаешь название картинки (ХХХ), дальше из каталога просто достаешь все файлы, в которых есть это самое название. Вродь была там одна функция, с помощью которой можно было это сделать...
----- Не знаешь - молчи.
scuter
Отправлено: 31 Января, 2008 - 01:52:02
Посетитель
Покинул форум
Сообщений всего: 282
Дата рег-ции: Янв. 2008
Покинул форум
Сообщений всего: 58
Дата рег-ции: Май 2007
Помог: -1 раз(а)
Dastar пишет:
Получаешь название картинки (ХХХ), дальше из каталога просто достаешь все файлы, в которых есть это самое название. Вродь была там одна функция, с помощью которой можно было это сделать...
логика может и прикольная Только здесь ты заставляешь цикл гонять 10 раз, а если, картинок, допустим 12? Можно, конечно выставить до 1000, но это же будет сильно тормозить... У меня вопрос, как подсчитать количество картинок, не ограничивая число итераций.
Dastar
Отправлено: 31 Января, 2008 - 12:32:41
Частый гость
Покинул форум
Сообщений всего: 199
Дата рег-ции: Янв. 2008 Откуда: Израиль
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.