Forum Webscript.Ru
Программирование => PHP => Тема начата: от 26 Декабря 2001, 21:09:50
-
Проблема в следующем:
На серваке есть файл, напр. 0001.xls
Когда юзер жмет на ссылку вида http://site.ru/some_file.zip
, то юзер получает файл 0001.xls тока переименованый в some_file.zip.
Как быть?
-
rename("file_name","new_file_name");
-
a chto ti mozhesh pravit\'? Ti pol\'zovatel\' ili razrabotchik?
Esli razrabotchik , to chitaj pro "Content-disposition" v HTTP
-
Если попытаться переименовать файл-источник, может получится, что некоторые пользователи получат не то что хотели.
Лучше отсылать файл прямо из скрипта. Насколько я понимаю, имя файла, который получит клиент, задается в заголовке потока, то есть имя можно указать, какое заблогарассудится.
header ("Content-Disposition: attachment; filename=\'fname.ext\');
За дополнительной информацией можете обращайтиться сюда: http://rfc.net/rfc2616.html (HTTP Protocol)
-
А где путь отправляемого файла?
-
стоп. Так файл - на сервере (WWW) или на клиенте?!!!!! Ты не можешь стянуть (украсть) у клиента ни одно файла, коме указанных в запросе (т.е ты не можешь украсть целую директорию файлов у клиента)
-
Дак это понятно.
Мне надо свой некрасивый файл, например,
00034.zip отправить пользователю, но что бы он имел красивое имя my_amazing_name.zip
-
Аа...
header ("Content-Disposition: attachment; filename=\'krasivij.zip\'");
header("Content-type:application/zip");
$fp=fopen("put\'-k-00034.zip","r");
fpassthru($fp);
?>
(без последнего ENTER-а файл должен быть)
-
Пасибо. Юзну!