генерация страниц с картинками из БД
| Автор
| Сообщение |
 NikotiN
Розовый мамонт

Возраст: 26
Знак зодиака: 
Зарегистрирован: 18.03.2005
Сообщения: 2137
|
|
|
Цитата |
|
здрасте.
вопрос с стиле: я вроде понимаю как это сделать, но хетелось бы услышать, как это делают остальные.
собственно вопрос: сайт на пхп, страницы генерятся на лету из данных в бд. так вот, пользователь запросил страницу, что происходит? пхп пишет в поток текст, это понятно, а как быть с картинкой?
её сохраняет у себя где-то сервер(имхо, довольно глупо) или тоже пишет только в поток?
а как же в свойствах картинки путь отображается, её ведь не будет в виде файла, тллько в памяти....?
а если я запрошу только картинку? серверу придётся перерывать всю бд для поиска именно нужной картинки? да и как он вообще определит, что это именно та картинка?
а если картинки отключены, то зачем серверу лишний траффик?
а как сейчас поступают, картинки отдельно или всё в бд хранят?
а как это в пхп выглядит (отсылка нужных картинок пользователю), анализируется html? _________________ Сила дурака в том, что умный перед ним бессилен. |
|
| В начало |
|
 |
|
|
 |
 Ktf
Администратор

Возраст: 32
Знак зодиака: 
Зарегистрирован: 15.05.2005
Сообщения: 1502
Откуда: localhost
|
|
|
Цитата |
|
ну, начнем с того, что контент бывает статическим и динамическим.
статический контент - этот тот контент, который мертвым грузом лежит на сайте и доступен по постоянному адресу.
в основном это html-страницы, мультимедиа-файлы и дистрибутивы.
к динамическому контенту относится все, что генерируется скриптами, выполняющимися на сервере - perl, asp, php и т.д.
данные, возвращаемые скриптами, могут быть получены разнообразными способами, но в основном это переадресация на статический контент и/или заполнение некоторого шаблона данными, полученными откуда угодно - от пользователя, из бд, из файлов и т.п.
когда ты обращаешься к скрипту, выдающему некоторую страничку, содержащую картинки, в браузер передается только тело самой странички, далее перед выводом на экран браузер анализирует ее содержимое и подгружает связанные файлы, к которым относятся таблицы стилей, java-, vb- и прочие скрипты, и мультимедиа-файлы.
стало быть, если у тебя в настройках браузера отключены java-скрипты, то соответствующие js-файлы загружаться не будут.
то же самое касается картинок.
ну вот допустим, у тебя на полученной с сервера страничке имеется такой тег - <img src="http://forum.chertenok.ru/img.php?id=21">
если не выключены картинки (или юзер дал команду браузеру показать именно эту картинку), то браузер попытается загрузить картинку с адреса, указанного в атрибуте src, причем его абсолютно не волнует, какое расширение у запрашиваемого файла.
в нашем случае это php-файл, который должен вернуть графический файл любого из поддерживаемых типов.
допустим, требуемая картинка у тебя хранится в базе – тогда php-скрипт генерит ответ на лету: вытягивает тело картинки из blob-поля и вываливает в поток, предварительно выставив в хедере соответствующий тип контента и его размер.
но обычно картинки в базе не хранятся, т.к. это неудобно.
вместо этого в базе создается индексная таблица, в которой содержится информация о расположении картинки в файловом пространстве сервера, причем вовсе не обязательно, что это будет доступный через http каталог, главное, чтобы этот каталог был доступен php-скрипту. _________________ Пойду посплю перед сном. |
|
| В начало |
|
 |
 NikotiN
Розовый мамонт

Возраст: 26
Знак зодиака: 
Зарегистрирован: 18.03.2005
Сообщения: 2137
|
|
|
Цитата |
|
хы, спасибо, информативно и доступно) _________________ Сила дурака в том, что умный перед ним бессилен. |
|
| В начало |
|
 |
|
Новая тема
Ответить
Печать
|
Вы можете начинать темы Вы можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете присоединять файлы в этом форуме Вы можете скачивать файлы в этом форуме
|
|