Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Если формат zip and rar скачка Если нет открытие!
 
 автор: Panker   (09.05.2006 в 04:16)   письмо автору
 
 

Вот есть скрипт!

<? 
Error_Reporting
(E_ALL & ~E_NOTICE);
@
error_reporting(0);                        # не выводим никакие ошибки 
$dir="articles/";                            # папка, в которой хранятся статьи 


# эта функция проверяет и выводит названия всех файлов в папке $dir (articles/ по умолчанию) 
function showdir($df) { 
$df=str_replace("//","/",$df); 
if (
$dir=opendir($df)) {                        # открываем диру 
while (($file=readdir($dir))!==false) {                # читаем названия файлов, пока это возможно =) 
if ($file=="." || $file=="..") continue; 
if (!
is_dir("$df/$file")){                        # если считанный файл не папка, то.... 
echo " <a href='$PHP_SELF?file=$file'>$file</a><br>";        # то выводим вот такую вот херь (названия файлов =)) 
}}} 
closedir($dir);# Закрываем диру 



# Эта функция читает файл $filename 
function read_file($filename) { 
if (
file_exists($filename)){ 
$file=fopen($filename,"r") or die ("Нет доступа"); 
$rf=fread($file,filesize($filename)) or die ("Нет доступа"); 
fclose($file); 

return 
$rf



# Если в переменной file будут .. то скрипт матюкнётся 
# То есть "злобный хакер" не сможет прочитать файлы вне директории $dir (например так index.php?file=../../../../etc/passwd) 
if ( strstr($file,"..") ) {echo "fuck you";die;} 

if ( isset(
$_GET[file]) )                        # Если переменная $file существует (то есть в адресной строке браузера index.php?file=1.txt) ... 
echo "<pre>".read_file("$dir/$file")."</pre>";            # ...то читаем этот файл 
else                                 # В противном случае ... 

echo 
"<h3>Список статей:</h3>"
showdir($dir);                             # ...просто выводим имена статей 

?>

Возможно ли так сделать что если файлы html php и так далее они открывались!
А вот если rar zip и так далее скачивались )?
Помогите сделать так :(
Окончания там вроде разные но я не знаю как по окончанию менять то или иное действие (

   
 
 автор: cheops   (09.05.2006 в 11:21)   письмо автору
 
   для: Panker   (09.05.2006 в 04:16)
 

Эти файлы и должны по умолчанию себя так вести.

   
 
 автор: Panker   (09.05.2006 в 11:46)   письмо автору
 
   для: cheops   (09.05.2006 в 11:21)
 

странно (( у меян ленивые файлы (( не ведут они себя так :(

   
 
 автор: Panker   (09.05.2006 в 11:56)   письмо автору
 
   для: Panker   (09.05.2006 в 11:46)
 

как бы адрес такой получается если рар http://skin:8648/dowl.php?file=guest88.rar
может из за этого? и если рар то он открывается типа иероглифы написаны

   
 
 автор: Саня   (09.05.2006 в 13:19)   письмо автору
 
   для: Panker   (09.05.2006 в 11:56)
 

нужно перед отправкой файла известить браузер о типе файла:
<?php
header
("Content-Type: application/x-rar-compressed");
?>

   
 
 автор: PantiL   (09.05.2006 в 17:57)   письмо автору
 
   для: Саня   (09.05.2006 в 13:19)
 

Опера по отношению к rar неправильно себя ведет. Пытается открывать как блокнот например. Чтоб скачать надо жать правой и тыкать в смохранить объект как...

   
 
 автор: Panker   (10.05.2006 в 01:28)   письмо автору
 
   для: PantiL   (09.05.2006 в 17:57)
 

если жать сохранить тогда сохранятся старнциа )

   
 
 автор: Panker   (10.05.2006 в 01:29)   письмо автору
 
   для: Panker   (10.05.2006 в 01:28)
 


нужно перед отправкой файла известить браузер о типе файла:

<?php 
header
("Content-Type: application/x-rar-compressed"); 
?>

Саня, прости не допонел! именно где извещать ? :)

   
 
 автор: Panker   (10.05.2006 в 01:56)   письмо автору
 
   для: Panker   (10.05.2006 в 01:29)
 

ie opera всё 1 фиг )) открывает и всё тут (

   
 
 автор: Panker   (10.05.2006 в 14:42)   письмо автору
 
   для: Panker   (10.05.2006 в 01:56)
 

=(

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования