На этом месте находится расчудесная шапка. Включите flash - не пожалеете!

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Автозаполнение таблицы-бд имеющимися картинками, MySQL, PHP
Нун
сообщение 22.4.2008, 1:34
Сообщение #1


Только зарегистрировавшийся


Группа: Пользователи
Сообщений: 5
Регистрация: 22.4.2008

Пользователь №: 13 672



Репутация:   0  


Дано: несколько тысяч картинок (нет, не угадали - не порно wink.gif ), желание и время.
Задача: каталог для сайта с сортировкой по страницам, вообще разобраться каким образом в базу данных MySQL (пользуюсь SQL Manager for MySQL) добавлять картинки, и наконец - возможно-ли автоматическое заполнение таблицы вообще.

Начал было Drag&Drop'ом в обычную html'ную таблицу поштучно пихать картинки... После 30 картинок остановился с мыслью "еще две тысячи девятьсот семьдесят". Результат - эта тема на форуме smile.gif
Заранее благодарю.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
liw
сообщение 22.4.2008, 11:56
Сообщение #2


Житель
***

Группа: Модераторы
Сообщений: 283
Регистрация: 2.11.2007

Пользователь №: 6 760



Репутация:   20  


Ну примерно так:

Код
    
//соединяетесь с базой
foreach (glob("*.jpg") as $filename) { //берём все картинки jpg из папки..
        if(mysql_query("INSERT INTO images VALUES (1,'".$filename."','".addslashes(file_get_contents($filename))."')")){
print "file ".$filename." - ok<br>";}else{print "file ".$filename." - error<br>";};
    }



Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Нун
сообщение 23.4.2008, 18:54
Сообщение #3


Только зарегистрировавшийся


Группа: Пользователи
Сообщений: 5
Регистрация: 22.4.2008

Пользователь №: 13 672



Репутация:   0  


Какой тип данных выбирать в MySQL для картинок? Скрипт попробовать пока не удалось, но позже напишу остальные вопросы, которые, я практически уверен, у меня возникнут smile.gif Большое спасибо за ответ.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
liw
сообщение 23.4.2008, 20:27
Сообщение #4


Житель
***

Группа: Модераторы
Сообщений: 283
Регистрация: 2.11.2007

Пользователь №: 6 760



Репутация:   20  


BLOB
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Нун
сообщение 28.4.2008, 14:06
Сообщение #5


Только зарегистрировавшийся


Группа: Пользователи
Сообщений: 5
Регистрация: 22.4.2008

Пользователь №: 13 672



Репутация:   0  


Очередная порция вопросов:
Как вытащить картинку в таблицу из базы mysql?

Чтобы все было намного проще, посоветуйте пожалуйста книжечку по пхп, нечто более продвинутое чем "пхп 5 в теории и на практике. Самоучитель".
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
liw
сообщение 28.4.2008, 15:41
Сообщение #6


Житель
***

Группа: Модераторы
Сообщений: 283
Регистрация: 2.11.2007

Пользователь №: 6 760



Репутация:   20  


Код
$data=mysql_fetch_array(mysql_query('SELECT `image_blob_field_name` FROM `table_name`'));
header("Content-type: image/jpg");
print $data[0];


Книг советовать не буду, так как не знаю. Когда нужна конкретная информация ещё проще найти через поиск. (yandex, google etc.)
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
_r2_
сообщение 29.4.2008, 10:35
Сообщение #7


Только зарегистрировавшийся


Группа: Пользователи
Сообщений: 4
Регистрация: 29.4.2008

Пользователь №: 13 970



Репутация:   0  


Настоятельно не советую заливать в базу сами картинки.
Храните лучше пути к ним или просто названия файлов, пути достраивая уже при выводе!


--------------------
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Нун
сообщение 1.5.2008, 14:21
Сообщение #8


Только зарегистрировавшийся


Группа: Пользователи
Сообщений: 5
Регистрация: 22.4.2008

Пользователь №: 13 672



Репутация:   0  


Цитата(liw @ 28.4.2008, 16:41) *

Код
$data=mysql_fetch_array(mysql_query('SELECT `image_blob_field_name` FROM `table_name`'));
header("Content-type: image/jpg");
print $data[0];


Книг советовать не буду, так как не знаю. Когда нужна конкретная информация ещё проще найти через поиск. (yandex, google etc.)

В очередной раз выражаю благодарность за дельные советы smile.gif

Цитата(_r2_ @ 29.4.2008, 11:35) *

Настоятельно не советую заливать в базу сами картинки.
Храните лучше пути к ним или просто названия файлов, пути достраивая уже при выводе!

Спасибо! Ковырявшись с выковыриванием (ну да, да) картинок из базы решил все-таки остановиться на этом методе.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Нун
сообщение 1.5.2008, 22:42
Сообщение #9


Только зарегистрировавшийся


Группа: Пользователи
Сообщений: 5
Регистрация: 22.4.2008

Пользователь №: 13 672



Репутация:   0  


Еще два вопроса: как заставить пхп скрипт (в данном случае скрипт выборки .jpg файлов в базу данных) не учитывать регистр? Как вытащить лишь часть названия файла из строки базы данных, допустим есть файл ABC_NAME_small.jpg, нужно только NAME.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
liw
сообщение 4.5.2008, 9:45
Сообщение #10


Житель
***

Группа: Модераторы
Сообщений: 283
Регистрация: 2.11.2007

Пользователь №: 6 760



Репутация:   20  


LIKE %NAME%

для того что бы был регистронезависимый поиск, кодировка базы должна должна быть не XXX_general_ci
ну или просто в запросе lower(поле) LIKE %NAME%,
возможно есть ещё какой нибудь способ.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия Сейчас: 7.9.2008, 2:00
Rambler's Top100 Яндекс цитирования