Другие языки программирования и технологии

PHP+MySQL подскажите метод как задавать фотографии в БД если у одной строки (с одним ID) может быть несколько фотографий

Ещё не рассмотрели такой извращённый вариант когда в базе храним одно имя а скриптом дописываем ему суфикс (префикс) и при выводе достаем имя файла и ищем по шаблону

ID будет служить основным именем файла, если будут ещё файлы к этому ID то просто переделываем имя например ID_1. ID_2 ...
В поле PHOTO можно хранить описание

Но всё же правильнее - это делать отдельную табличку для этого, тогда и чегонить полезное запихать можно, описание или общую оценку или ещё чегонить...
В.
Витяня .
2 561
Лучший ответ
Владимир Югай как показывает практика то что правильнее (в MySQL) не всегда есть гуд!
Витяня . Согласен.
но у человека уже база есть.
Это и хорошо и плохо :)
В этом извращеном варианте базу не надо переделывать.
Хотя конечный скрипт всё равно будет зависеть от базы, но он и так уже зависит.
Ну как бы не единственный!
берем имена фоток всех загоняем в массив.. .
$photos = array("1.jpg","2.jpg","3.jpg","4.jpg");
преобразовуем в строку:
$stringPhoto = implode("{br}",$photos); //получаем что то в виде строки: 1.jpg{br}2.jpg{br}3.jpg{br}4.jpg
сохраняем эту строку в БД
потом получаем ее из таблички и
$photos = explode("{br}", $photosStringFromDB); // в итоге получим $photos = array("1.jpg","2.jpg","3.jpg","4.jpg");
Алексей Волков А тогда как хранить фотки. Было бы просто {ID}.jpg, а тут как тогда?
Женя Козырев OMG! implode и explode в БД, жесть!
Если уж решил не намекать на нормализацию и реляционные БД, то посоветуй что-нить стоящее вроде:
serialize()
unserialize()
А лучше отправь автора читать http://ru.wikipedia.org/wiki/Реляционные_базы_данных
Если несколько - имеет максимальное число (т. е. максимум 3 фотки) - то в таблице делаем 3 поля под фотки и не паримся

Если несколько - это хз сколько но много - отдельная таблица со сылкой на основную
Алексей Волков 1) Не хочется ставить границы, вдруг будет позиция с 4мя фотками? Это надо каждый скрипт переписывать.
2) Я об этом тоже думал, видимо единственный выход.
Первый ответчик верно посоветовал создать ещё одну таблицу для хранения фоток.
В первой таблице у тебя та самая строка "с определённым ID", а в новой таблице будут только фотки (по одной на строку) и ссылка на ту самую строк "с определённым ID".
Владимир Югай а теперь ему напишите запрос что бы вывести 10 категорий и из каждой категории по 5 фоток на языке Mysql
Денис Лутченко Примеры реализации набросал тут: http://www.dumpz.org/18730/
Категории можешь выкинуть, если нет надобности.