Forum Webscript.Ru

Программирование => PHP => Тема начата: ZigZag от 08 Августа 2002, 00:40:52

Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: ZigZag от 08 Августа 2002, 00:40:52
На сервак запрещены вся работа с файлами, т.е. закачка, копирование, создание....
Вижу единственным два выхода:
- побайтово закачать в поле блоб  в БД (но пока чего-то не получается....)
- или , например, закачивать гифы по фтп на другой сервак (но это тоже пока не получилось)...

поможите, люди, добрые.....

кстати вот линк: http://monsters.km.ru
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: Макс от 08 Августа 2002, 02:47:52
ZigZag
при закачке файл сначало закачивается на сервер и создается в виде файла во временном каталоге. А потом уже с ним можно делать что хочешь (копировать или в бд записывать).
То есть если запрещено создание файлов то закачиваться ничего не будет.

Мораль сей басни такова: Меняй хостинг
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: Tankist от 08 Августа 2002, 02:56:39
ZigZag
km.ru хостинг поддерживает он все это и еще много чего..
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: Alexandr от 08 Августа 2002, 09:22:55
Не храни картинки в БД - резко снижается производительность.
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: ZigZag от 08 Августа 2002, 14:03:05
На km.ru все это еще недавно работало,
а потом усе... трындец

даже MkDir не работает

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

кстати, на локалке все пашет со свистом, разными способами и т.п.

вот такой праблем, поэтому и хочу засовывать картинки в MySQL......
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: AlieN от 08 Августа 2002, 15:39:23
Цитировать
если запрещены команды копирования....


$fp=fopen($file);
$data=fread($fp,feof($fp);
fclose($fp);
$fp2=fopen("new_file_name",w);
fwrite($fp2,$data);
fclose($fp2);
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: ZigZag от 09 Августа 2002, 12:34:29
2 AlieN

т.е. ты предлагаешь держать несколько готовых пустых файлов, созданных по фтп доступу, и копировать туда из папки темп на серваке...... что то подобное пробовал...

попробую еще...

Спасибо!!!
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: GotZfild от 09 Августа 2002, 12:46:04
Цитировать
несколько готовых пустых файлов

Открытие файла в режиме w ведет к созданию файла с указанным именем, если такого нет в наличии.
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: ZigZag от 10 Августа 2002, 16:21:04
2 GotZfild

В этом то все и дело.

Открытие файла в режиме w  НЕ ведет к созданию файла с указанным именем, если такого нет в наличии.
(на этом хостинге, km.ru)
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: Stek от 10 Августа 2002, 18:13:53
Цитировать
Открытие файла в режиме w НЕ ведет к созданию файла с указанным именем, если такого нет в наличии.

даже в /tmp нельзя ?
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: ZigZag от 11 Августа 2002, 02:10:27
2 Stek

в /tmp можно (и это все)..... =(
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: GotZfild от 11 Августа 2002, 12:54:17
ZigZag
Тогда загоняй в БД.
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: ZigZag от 11 Августа 2002, 13:19:22
2 GotZfild    =)))))))))

Так почему я тему и поднял
Я знаю, что надо загонять в БД, только не получается, вот и решил спросить - "Может кто уже это проделывал?"

Поделитесь , плиз, опытом.... (может кусочек скрипта завалялся?)
 === (http://www.kvm.km.ru/image/face/face01.gif) ===
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: Stek от 11 Августа 2002, 15:15:38
ZigZag
А не пробовал у себя создать директорию с правами 777 и в нее писать файлы ?

По поводу "картинку в базу" смотри вот тут
http://www.phpdevs.com/data/22/57.html
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: ZigZag от 11 Августа 2002, 16:13:58
2 Stek

Спасибо за линк, щаз почитаю....

А по поводу 777, пробовал конечно......
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: alex007 от 11 Августа 2002, 21:37:02
ZigZag
Посмотри на статейку на http://php.spb.ru/php/image.html
Там хорошо это описано.

С уважением,
Алекс
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: ZigZag от 12 Августа 2002, 12:20:45
2 alex007
Спасибо, почитаем.
Вроде то, что надо!

:)
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: ZigZag от 14 Августа 2002, 14:59:19
Всем спасибо!!!

На локалке пробная версия скрипта загоняет картинки в MySQL как надо!!! и выдирает их оттуда!

мне кажется все дело было в этом:
$image = addslashes($image);

Ща буду скрипт для сервака km.ru писать....
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: AlieN от 14 Августа 2002, 16:25:51
Цитировать
$image = addslashes($image);

конечно!!!
Ты бы ещё htmlspecialchars или Urlencode на неё натравил :) :) :)
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: Stek от 14 Августа 2002, 17:53:55
Цитировать
$image = addslashes($image);

Все совершенно верно, и смех по этому поводу вобщем то глупый.

Достаточно немного подумать головой, что бы понять, что картинка может содержать левые символы, которые желательно отслешить. А так как картинка берется с диска - то каким образом она может быть уже отслешенная ?

Это только Ромик в соседнем топике гордо орет про кривизну других программеров, а в частности про выше указанную строку.

Так что думайте перед тем как смеятся, возможно вы и не правы.
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: Меняздесьдавнонет от 14 Августа 2002, 18:08:09
Stek
Я могу и здесь поорать :-)

Картинка, "берущаяся" с диска, вполне может быть прослешена. Кроме magic_quotes_gpc есть еще magic_quotes_runtime
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: Ardzhan от 14 Августа 2002, 18:17:12
RomikChef
Давай, ты по этому спец. Только это и умеешь.
Название: Как в MySQL GIF засунуть с помощью ПХП?
Отправлено: ZigZag от 15 Августа 2002, 22:06:57
Warning: open_basedir restriction in effect. File is in wrong directory in /home/home/u51716262/www/lezut/obrabotka.php on line 154

Warning: fopen("/var/tmp/phpcAPWGC", "r") - Operation not permitted in /home/home/u51716262/www/lezut/obrabotka.php on line 154

Warning: Supplied argument is not a valid File-Handle resource in /home/home/u51716262/www/lezut/obrabotka.php on line 155

Warning: Supplied argument is not a valid File-Handle resource in /home/home/u51716262/www/lezut/obrabotka.php on line 156


сервак выдал после загрузки файла в его темп директорию и попытке его прочитать:

$f=fopen($image,"r");
$upmonstr=fread($f,filesize($image));
fclose($f);

в чем дело?