Download на и с сайта

  • Автор темы AlexDreamer
  • Дата начала

AlexDreamer

Guest
Download на и с сайта

Для сайта нужно следующее:
один пользователь загружает файл на сайт, другой может его скачать. чтобы не было проблем с существованием файла с тем же именем, загруженному файлу определяется временное имя из time(), а настоящее хранится в базе.

можно ли как-нить при скачивании файла с сайта назначить ему его настоящее имя, чтоб посетительне не получил что-то типа 3349304583.01

может можно сделать по-другому?

подскажите или ткните, где можно посмотреть.

Спасибо.
 

Апокалипсис

Guest
Перед скачиванием делай [m]rename[/m] как хочешь
 

AlexDreamer

Guest
Автор оригинала: Апокалипсис
Перед скачиванием делай [m]rename[/m] как хочешь
а потом что? на время скачивания давать настоящее, а затем опять давать временное имя? а если 2 посетителя сразу будут скачивать?
 

Iron

Guest
А не проще проверить наличие файла с таким именем?
 

Апокалипсис

Guest
А если имя русское ? предлагать переименовать ? Или всё таки давать своё
 

Апокалипсис

Guest
Обычно имена для файла генерится на серваке, т.к. имя может не соответствовать файлу...
 

Georgy

Guest
ребята, тема оффтопик:

download - вот туда...


Перед скачиванием делай rename как хочешь
2Апокалипсис - с головой все хорошо? Ты прикинь на сколько нагрузка возрастет при постоянном ренэйме на сервере? Да и вообще этот совет о том, как открывать Америку через форточку.
 

Апокалипсис

Guest
Дак если у него уже файлы с 3349304583.01 именами ?
Ему их вручную переименовывать ?
 

Georgy

Guest
Апокалипсис
PHPClub Monster

Oct 2002 (сообщений: 794)
Город: /Russia/Novosibirsk/
Дак если у него уже файлы с 3349304583.01 именами ?
Ему их вручную переименовывать ?

__________________
http://rockchat.aihs.net/
PHP:
<?php

$query=getenv("QUERY_STRING");
$docs='documents/';
$ext='.zip';
$filename=$query.$ext;

	if ($query && file_exists($docs.$filename)) {
		$fp = fopen($docs.$filename, 'rb'); 
		header("Content-Disposition: form-data; filename=[U][B]а вот так я его и назову[/B][/U]"); 
		header("Content-Type: application/octet-stream"); 
		header("Content-Length: ".filesize($docs.$filename)); 
		fpassthru($fp); 
		header("Connection: close"); 
		fpassthru($fp); 
		fclose($fp);
	}
	else {
		print 'Cannot find <b>'.$query.$ext.'</b>';
		exit;
	}

?>
- не правда ли просто
 
Сверху