![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
insy |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 140 Регистрация: 21.9.2008 Где: Saratov Репутация: нет Всего: нет |
Народ, не могли бы вы подробнее рассказать как работать с изображениями в бд...
Я знаю, что в базе должны храниться только ссылки а сами изображения в папке... мне интересно именно как это работает и по возможности примеры... Заранее благодарю! Это сообщение отредактировал(а) insy - 15.7.2009, 18:13 |
|||
|
||||
Ипатьев |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 3 Всего: 37 |
Да, в общем-то, и ссылки совсем не обязательно.
Вообще, не очень понятен вопрос. Все зависит от конкретной задачи. |
|||
|
||||
insy |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 140 Регистрация: 21.9.2008 Где: Saratov Репутация: нет Всего: нет |
Например у нас есть пользователь, который хочет поставить на аватар собственное изображение.Как нам лучше это реализовать.
Пользователь отправляет изображение, что происходит дальше... Заносить сразу в базу, или в базу заносить только ссылку... |
|||
|
||||
Ипатьев |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 3 Всего: 37 |
Во-первых, оставь идею "заносить сразу в базу". Картинке в базе делать ну совсем нечего. База данных у нас реляционная. То есть, служит для хранения данных, которые мы можем каким-либо образом связывать между собой - складывать суммы, сортировать названия, искать тексты, группировать признаки. Ничего из этого с картинкой сделать нельзя.
Картинку, лежащую на диске, вебсервер покажет в браузер сам, без начего участия. Чтобы показать картинку, лежащую в базе, придется писать отдельную программу, увеличивая нагрузку на сервер. На пустом, заметим, месте - картинка в базе нам никакой вообще пользу не приносит. Я бы в базу в этом случае не заносил вообще ничего. Во-первых, оригинальное имя картинки нас никак не интересует. Во-вторых, у нас наверняка есть уникальный id пользователя. В-третьих, аватар может быть только один. Следовательно, если сохранить картинку с именем, скажем, 234512.jpg, где имя совпадает с id, то сформировать ссылку можно будет автоматически. Расширение можно ставить любое, поскольку все браузеры, насколько я помню, различают картинки по формату, а не по расширению. |
|||
|
||||
Ипатьев |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 3 Всего: 37 |
Но вообще-то, база данных - дело десятое.
Сначала надо научиться просто принимать файлы от пользователя. |
|||
|
||||
nezabor |
|
|||
![]() Лесной житель... ![]() Профиль Группа: Участник Сообщений: 144 Регистрация: 17.4.2008 Где: Москва Репутация: нет Всего: нет |
а если аватарок больше то тогдым как, да и переносить данные(пользователей) на другой сервер будет проще
--------------------
Бесплатно о сайтах |
|||
|
||||
pd107 |
|
||||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 15.7.2009 Репутация: нет Всего: нет |
insy, я никогда так не делал, если не ошибаюсь, примерно так:
загрузка в базу:
вывод:
по идее примерно так Ипатьев, не о том спрашивали Это сообщение отредактировал(а) pd107 - 15.7.2009, 21:04 |
||||
|
|||||
nezabor |
|
|||
![]() Лесной житель... ![]() Профиль Группа: Участник Сообщений: 144 Регистрация: 17.4.2008 Где: Москва Репутация: нет Всего: нет |
а чтобы уникальные имена делались подскажешь
--------------------
Бесплатно о сайтах |
|||
|
||||
bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 9 Всего: 315 |
||||
|
||||
pd107 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 15.7.2009 Репутация: нет Всего: нет |
nezabor, http://ua.php.net/tempnam
|
|||
|
||||
Ипатьев |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 3 Всего: 37 |
pd107, спасибо, я сам разберусь, о чем прашивали, а о чем - нет.
|
|||
|
||||
insy |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 140 Регистрация: 21.9.2008 Где: Saratov Репутация: нет Всего: нет |
Все конечно замечательно, но не могли бы вы привести пример(Добавления изображения пользоваетелем при хранении в базе только ссылки на изображение )
т.е ссылка хранится в одном месте, само изображение в другом, а затем по этой ссылке вызывается... Это сообщение отредактировал(а) insy - 16.7.2009, 08:43 |
|||
|
||||
Ипатьев |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2232 Регистрация: 5.7.2009 Репутация: 3 Всего: 37 |
insy, если ты умеешь работать с базой данных, то какая проблема записать в нее имя файла? Имя файла - это просто строка. Как имя пользователя. Имя пользователя ты можешь записать в базу данных? Если нет, то тебе надо учиться работать не с файлами, а с бадой данных. Если да - то в чем проблема записать в базу данных строку?
|
|||
|
||||
insy |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 140 Регистрация: 21.9.2008 Где: Saratov Репутация: нет Всего: нет |
имя файла записать не проблема, но вот как сделать, чтобы по этому имени потом определялось изображение... Я не пойму именно как их связать... чтобы на сервер отправлялась картинка, а ссылка на нее хранилась в базе... и по ссылке мы в дальнейшем извлекали картинку...
п.с: я просто не представляю как по другому описать данную задачу Это сообщение отредактировал(а) insy - 16.7.2009, 09:15 |
|||
|
||||
bars80080 |
|
|||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 9 Всего: 315 |
insy, ну тебе же объяснили. задача разбивается на совершенно независимые этапы:
1. загрузка файла на сервер 2. запись имени в БД ты первое можешь сделать? |
|||
|
||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Базы Данных | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |