Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> аплоад файла с сохранением в БД 
:(
    Опции темы
Sap1enS
Дата 10.10.2007, 07:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 10.10.2007
Где: Омск

Репутация: нет
Всего: нет



Никак не могу найти такую простую, на мой взгляд, вещь.

Гружу файл через форму POST`ом. 

Если при обработке я пишу 
$file = $query -> param('file');
а затем,
print $file;
то выводится название файла. 
Мне нужно НЕ сохранить его на сервере, а получить строку с содержимым файла и записать его в БД (поле типа BLOB). 
PM MAIL ICQ   Вверх
nitr
Дата 10.10.2007, 10:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2543
Регистрация: 10.2.2006
Где: Россия :)

Репутация: 37
Всего: 84



Sap1enS, а тип формы указан? Если что - код в студию (но на форуме уже обсуждали это, поиском можно глянуть ;) )


--------------------
PM   Вверх
KSURi
Дата 10.10.2007, 10:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 887
Регистрация: 8.6.2006
Где: Russia

Репутация: 20
Всего: 27



Попробуй так:
Код

my $tmp = $query -> param('file');

my $content;
binmode $content;

$content .= $_ while <$tmp>;

$dbh -> do(qq{... '$content' ...})



--------------------
Died at Life.pl line 21
PM Jabber   Вверх
kefir01
Дата 11.10.2007, 08:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 213
Регистрация: 22.6.2007

Репутация: нет
Всего: 2



Код

my $foto = param("foto");
my $content;

my $dbh = DBC();

my $file = upload($foto,"tempimg"); #подпрограмма работает нормально.
open(FOTO,"/home/.../WWW/_TEMP/$file");
$content .= $_ while <FOTO>;
close FOTO;

my $sth = $dbh->prepare(qq{update students set birth_date="$birth",user="$mail",photo="$content" where id="$id"});
$sth->execute;
system("rm -fR /home/psihser9/.../_TEMP/$file");


Знающие люди, скаите плиз почему может не работать такой код?
Файл закачивается, передается в $content, который почему-то не добавляется.

UPD
 
Поменял немного код - заработало
Код

my $sth = $dbh->prepare(qq{update students set birth_date="$birth",user="$mail",photo=? where id="$id"});
$sth->execute($content);


Это сообщение отредактировал(а) kefir01 - 11.10.2007, 08:53
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0641 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.