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

Форум MySQL

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

 

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

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

тема: скачивание файлов
 
 автор: JESS   (08.01.2010 в 00:30)   письмо автору
 
 

Привет всем!

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


    $fileName = $dw[2];
    $patch = "files";
    header("Content-Disposition: attachment; filename=$fileName");
    header("Content-type: application/octet-stream");
    //header("Content-Length: ".filesize("$fileName"));
    fpassthru(fopen($patch."/".$fileName,"rb"));
    fclose ($fileName);
    exit();


Зип работает хорошо, другие форматы не проверял.

  Ответить  
 
 автор: Trianon   (08.01.2010 в 00:32)   письмо автору
 
   для: JESS   (08.01.2010 в 00:30)
 

непонятно

  Ответить  
 
 автор: JESS   (08.01.2010 в 00:34)   письмо автору
 
   для: Trianon   (08.01.2010 в 00:32)
 

и другие форматы тоже, .docx, txt))
вот весь код
<?php
$showFiles 
mysql_query("SELECT * FROM `$table1` ORDER BY name");
while(
$dmysql_fetch_row($showFiles))
    {
    
//$downloadName =  base64_encode($d[3]);
     
echo "<a href=\"?get=".base64_encode($d[3])."\">".$d[2]."</a><br \>";
    }

    if(isset(
$_GET['get'])) {
    
$downloadName  base64_decode($_GET['get']);

$downloadFile mysql_query("SELECT * FROM `$table1` WHERE `downName` = '{$downloadName}' LIMIT 1");
while(
$dwmysql_fetch_row($downloadFile))
    {
    
//if($downloadName == $dw[3]) {
//-------------------
    
$fileName $dw[2];
    
$patch "files";
    
header("Content-Disposition: attachment; filename=$fileName");
    
header("Content-type: application/octet-stream");
    
//header("Content-Length: ".filesize("$fileName"));
    
fpassthru(fopen($patch."/".$fileName,"rb"));
    
fclose ($fileName);
    exit();
//--------------------
        //}
    
}
    }
?>

  Ответить  
 
 автор: easywind   (08.01.2010 в 11:27)   письмо автору
 
   для: JESS   (08.01.2010 в 00:34)
 

Привет. Если картинка не показывается значит что-то с путями. Тоесть сервер ее не находит (потому и пишет картинка не доступна). Нажми на "картинка не доступна" правую кнопку мышки и посмотри откуда сервер пытается ее грузить (картинку).

  Ответить  
 
 автор: JESS   (08.01.2010 в 23:20)   письмо автору
 
   для: easywind   (08.01.2010 в 11:27)
 

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

  Ответить  
 
 автор: Trianon   (09.01.2010 в 02:33)   письмо автору
 
   для: JESS   (08.01.2010 в 00:34)
 

LIMIT 1
while(mysql_fetch_row())

Так... мне надо срочно пойти полежать в кустах...

  Ответить  
 
 автор: JESS   (09.01.2010 в 16:57)   письмо автору
 
   для: Trianon   (09.01.2010 в 02:33)
 

а в чем проблема?

  Ответить  
 
 автор: Trianon   (09.01.2010 в 17:00)   письмо автору
 
   для: JESS   (09.01.2010 в 16:57)
 

Если Вы запрашиваете один элемент (а судя по WHERE `downName` = '{$downloadName}' это именно так) - зачем Вам LIMIT 1?

И если элемент один (по WHERE) одинешенек (по LIMIT 1) , ради всего святого - зачем Вам цикл?!
Что Вы этим циклом собрались перебрать?

И если этот цикл всё же исполнится более раза - чего Вы достигните получившейся мешаниной header/Content-Type и fopen/fpassthru?

И наконец. Что получится, если цикл не исполнится ни разу?

  Ответить  
Rambler's Top100
вверх

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