Вопрос организации отправки данных на сервер и последующего хранения!

vladax

Новичок
Вопрос организации отправки данных на сервер и последующего хранения!

В Мускуле есть обычная таблица с товаром. К примеру с такими полями:
item_id|name_item|discription|price
где item_id - автоинкримент.
В каждой позиции должна присутствовать фотка.
Как бы Вы, господа, организовали загрузку данных через форму? Где и когда предлагать загружать файл? Возможно ли отправить текст и фотку за один этап? Если да, то как называть и куда запихивать image-файл соответствующий позиции! (Имеется ввиду как всё это организовать наиболее рационально!)

Зы: захотелось мне сделать у себя как у людей, а то есть у меня такое чувство что сделал я раньше всё как-то через ж... :)
 

lunux

Новичок
Если я правильно понял, то те надо обычным способом через <input type="file" брать фотку стандартным copy(), ее копировать себе на сервак ну и праписывать в БД строку INSERT'ом, сохраняя связь с фоткой либо с созданием поля с ЮРЛ, либо через ID'шник, в последнем случае при копировании генериш имя файла после инсерта в зависимости от того какой ID выдаст БД вроде все 8)
 

vladax

Новичок
Через айдишник связь с фоткой наладить не удастся, потому что, когда ты заполняешь форму, записи ещё никакой нет и айди соответственно тоже. Вот и приходится генерить мне имя файла и валить все фотки в одну дир (каталог не большой, не больше 5 000 позиций будет, думаю рейзер не загнётси). А функцию генерации имени запускаю рекурсивно на случай допустимой вероятности что она файл с таким именем уже есть до тех пор пока не выдаст уникальный.

Сорри, я не стал это сразу писать, хотел услышать от вас варианты... Так что есть другие покрасивее?
 

RomikChef

Guest
А что поменять действия местами в голову не пришло?
сначала сделать в базе запись, получить айди, и с этим айди в качестве имени и скопировать файл
 

vladax

Новичок
А что поменять действия местами в голову не пришло?
сначала сделать в базе запись, получить айди, и с этим айди в качестве имени и скопировать файл
Как ты это сделаешь за этап?
 

RomikChef

Guest
если ты больной и уставший - пойди выздоровей и отдохни.
Тебе уже два человека написали, как они делают за один этап.

перечитай - там написано
 

vladax

Новичок
Может я и уставший, или не понимаю элементарных вещей, но покажите мне на примере, плиз, как можно заинсертить данные втаблицу и тут же вывести айди записи в брюзер.
 

RomikChef

Guest
mysql_query("insert into table values(0,1)");
echo mysql_insert_id();
 

vladax

Новичок
Да уж... действительно элементарно. Пора мне повнимательнее заняться RTFM
mysql_insert_id() - упустил совсем

Спасибо
 
Сверху