Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Фотогалерея

Сообщения:  [1-10]    [11-20]  [21-22] 

 
 автор: cheops   (20.01.2005 в 21:33)   письмо автору
 
   для: Naught   (20.01.2005 в 21:17)
 

Это серьёзная переработка, требующая уделения Web-приложению серьёзного внимания и последующему тестированию его. Произведённые изменения касались защиты данного Web-приложения - это текущее сопровождение, не отнимающее большого времени.

   
 
 автор: Naught   (20.01.2005 в 21:17)   письмо автору
 
   для: Naught   (07.11.2004 в 19:41)
 

Поднимаю болезненный для себя вопрос. Недавно заметил, что вышла новая версия Вашей фотогалереи. Я на радостях ее скачал. Оказалось, что проблема вложенности каталогов так и не решена. Хотелось бы знать, будет ли сие полезное нововведение в следующих версиях фотогалереи?...
С уважением...

   
 
 автор: Naught   (10.12.2004 в 22:49)   письмо автору
 
   для: cheops   (09.12.2004 в 22:32)
 

cheops, Дизайнер
Спасибо за подробные ответы :)
Буду мучать вашу замечательную фотогалерею дальше :)

   
 
 автор: glsv (Дизайнер)   (09.12.2004 в 22:54)   письмо автору
 
   для: Naught   (09.12.2004 в 19:20)
 

>Вопрос 2. Почему вы делаете уменьшенную копию картинки, вместо того, чтобы просто
>указывать в теге <img> размер? С чем это связано?

Можно просто менять размер картинки в теге <img>, но ведь сама картинка не станет меньше (в килобайтах). Она просто будет смасштабирована. Чтобы посетителю не грузить не нужные килобайты, нужно либо вручную создавать уменьшенные копии изображений, либо делать это автоматически с помощью GDLib.

   
 
 автор: cheops   (09.12.2004 в 22:32)   письмо автору
 
   для: Naught   (09.12.2004 в 19:20)
 

3,4) Про список ссылок подкаталогов корневого каталога не очень понял в чём проблема - их же можно выбрать просто SELECT-ом с условием id_parent=0 (признак подкаталога корневого каталога)
С 4 вопросом и рандомом ситуация такая, чтобы не осущствлять каждый раз рекурсивный спуск по дереву подкаталогов наверное имеет смысл ввести ещё одно поле, в котором для каждого подкаталога нижнего звена указывалась принадлежность его к одному из подкаталогов корневого каталога: и подсчитывать будет проще - количество фотографий в базе, чьё дополнительное поле равно первичному ключу подкаталога и случайный выбор проще организовать для этого достаточно будет организовать запрос вида
SELECT * FROM tbl WHERE ... ORDER BY RAND() LIMIT 1

   
 
 автор: cheops   (09.12.2004 в 22:21)   письмо автору
 
   для: Naught   (09.12.2004 в 19:20)
 

1) Здесь несколько путей,
a. передавать вниз по дереву каталогов первичный ключ родительского каталога в каком-нибудь дополнительном параметре (можно это значение засовать и в сессию)
б. Анализировать $_SERVER["HTTP_REFERER"], возвращающий адрес страницы с которой пришёл посетитель - если домен и каталог совпадает для фотогалереи смотреть откуда пришёл постетитль - не очень надёжно и можно поиметь неприятные фичи...
в. Осуществить SQL-запрос и выяснить кто приходится родителем текущему каталогу, так как всё-равно будет это делать для того, чтобы выяснить название каталога и его описание - вот и посмотрите его поле id_parent - это первичный ключ верхнего каталога - мне кажется это самый перспективынй путь.
2) Сейчас куда не плюнь цифровые камеры, с объёмом по 256 Мб и более, дизайнеры справедливо считают, что много не мало :))) и фотографируют на полном разрешении, что бы ничего не пропало :))) В результате картинки достигают размеров 2 и более мегабайт, конечно в таком виде они на сайт не идут, но всё-равно десяток картинок большого объёма могут отбить всякое желание далее просматривать сайт владельцем обычного или GPRS-модема.

   
 
 автор: Naught   (09.12.2004 в 19:20)   письмо автору
 
   для: cheops   (08.12.2004 в 20:38)
 

Ага, спасибо, разобрался... Только вот пара вопросов появилось...
Вопрос 1. Вроде я со всем разобрался. Сделал добавление каталогов. Сделал просмотр каталогов. Но как сделать возврат на верхний уровень?
Вопрос 2. Почему вы делаете уменьшенную копию картинки, вместо того, чтобы просто указывать в теге <img> размер? С чем это связано?
Вопрос 3. Я сделал главную страничку фотогалереи по типу:
1.Название каталога корневого | фотография | - список ссылок
...описание каталога......................| .маленькая. | - на подкаталоги корневого
2.Название каталога корневого | фотография | - список ссылок
...описание каталога......................| .маленькая. | - на подкаталоги корневого
Идея, думаю, ясна.
Вопрос такой. Как сделать собсна список ссылок подкаталогов корневого каталога - ето раз. и как сделать, чтобы маленькая фотография бралась рандомно из каталога.
Вопрос 4. Как сделать, чтобы галереей корневого каталога являлась сумма всех фотографий, входящих в подкаталоги этого каталога.

   
 
 автор: cheops   (08.12.2004 в 20:38)   письмо автору
 
   для: Naught   (08.12.2004 в 20:33)
 

Каждая ссылка должна содержать параметр id_parent:
www.mysite.ru/index.php?id_parent=1

А при отображении содержимого каталога следует использовать запрос:
SELECT * FROM catalog WHERE id_parent=$_GET['id_parent']

   
 
 автор: Naught   (08.12.2004 в 20:33)   письмо автору
 
   для: cheops   (02.12.2004 в 21:14)
 

Это все понятно.
У меня вызывает вопрос другое - как заставить скрипт "узнать" id_parent каталога. Т.е. как правильно сформулировать MySQL - запрос.

   
 
 автор: cheops   (02.12.2004 в 21:14)   письмо автору
 
   для: Naught   (02.12.2004 в 21:04)
 

Создание такого каталога описывается в 6 главе нашей новой книги, но она к сожалению, ещё не отпечатана. Содержание я привести не могу (она занимает 60 страниц), да и права не имею. Разработка каталога начинается следующим образом:
Таблица catalog, включает 6 полей:
id_catalog — первичный ключ таблицы;
name — название подкаталога;
descrition — описание подкаталога;
pos — поле, определяющее позицию каталога относительно других при выводе списка каталогов в окне браузера;
hide — поле, типа ENUM, принимающее два значения 'show' и 'hide' и определяющее доступность каталога для просмотра посетителями. По умолчанию, поле принимает значение 'show', что соответствует состоянию доступности каталога для просмотра посетителями;
id_parent — поле, принимающее значение первичного ключа другого каталога, который является родительским для данного подкаталога.
Поле id_parent позволяет организовывать многоуровневое вложение каталогов. Значение данного поля равно 0 для каталогов расположенных в корневом каталоге и равно значению первичного ключа каталога по отношению к которому они являются подкаталогами. Оператор CREATE выполняющий создание данной таблицы приведен в листинге:

CREATE TABLE catalog (
  id_catalog INT(8) NOT NULL AUTO_INCREMENT,
  name TINYTEXT NOT NULL,
  description TINYTEXT NOT NULL,
  pos SMALLINT(3) NOT NULL default '0',
  hide ENUM('show','hide') NOT NULL DEFAULT 'show',
  id_parent INT(8) NOT NULL DEFAULT '0',
  PRIMARY KEY (id_catalog),
  KEY id_parent (id_parent)
) TYPE=MyISAM;

   

Сообщения:  [1-10]    [11-20]  [21-22] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования