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

Форум PHP

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Определение размера файла

Сообщения:  [1-10]   [11-13] 

 
 автор: Trianon   (12.08.2007 в 12:42)   письмо автору
 
   для: Buhen   (12.08.2007 в 12:04)
 

Тогда - конечно.

   
 
 автор: Unkind   (12.08.2007 в 12:14)   письмо автору
 
   для: Buhen   (12.08.2007 в 12:04)
 

Ну вообще-то Вашим кодом Вы измеряете размер исходящего документа, а filesize() - размер файла.

   
 
 автор: Buhen   (12.08.2007 в 12:04)   письмо автору
 
   для: Trianon   (12.08.2007 в 11:59)
 

Файл хранится там где находится мой сайт(не в БД) и определяю я размер файла на моем сайт как я понял лучше использовать функцию filesize

   
 
 автор: Trianon   (12.08.2007 в 11:59)   письмо автору
 
   для: Buhen   (12.08.2007 в 11:32)
 

С формальной точки зрения, Ваш код создает дополнительным запросом к apache и php двойную нагрузку на сервер.
А фактической - он просто дико выглядит. Поскольку Вы пытаетесь работать со своей машиной средствами для работы с данными на удаленных серверах .

   
 
 автор: Trianon   (12.08.2007 в 11:51)   письмо автору
 
   для: Buhen   (12.08.2007 в 11:32)
 

это примерно как сперва купить холодильник, а потом идти опять в магазин с целью замерить его габариты.

Если содержимое файла хранится у Вас с БД, размер поля можно получить, применив подобный запрос SELECT LENGTH(filebody) FROM tbl WHERE file_id = $file_id

   
 
 автор: Buhen   (12.08.2007 в 11:32)   письмо автору
 
   для: cheops   (12.08.2007 в 11:22)
 

А какая разница между моим кодом и функцией filesize? Какая лучше?

   
 
 автор: cheops   (12.08.2007 в 11:22)   письмо автору
 
   для: Buhen   (12.08.2007 в 10:39)
 

>На том же сервере!
Хм... а почему бы тогда не воспользоваться классической функцией filesize()

>Если закачивать файл в названии котором есть пробелы между словами (не подчеркивания) то
>в бд заносится токо первое слово названия файла. Как решить проблему?
Вероятно у вас где-то используется атрибут value без кавычек "" - поэтому воспринимается всё, что до пробела.

   
 
 автор: Buhen   (12.08.2007 в 10:39)   письмо автору
 
   для: cheops   (12.08.2007 в 10:26)
 

На том же сервере! Я понял вроде в чем проблема. Все было в том что полное название файла с расширением я заносил в бд но не обрабатывал функцией strtolower а копировался файл уже с названием обработанным strtolower. Но возникла еще одна проблема. Если закачивать файл в названии котором есть пробелы между словами (не подчеркивания) то в бд заносится токо первое слово названия файла. Как решить проблему?

   
 
 автор: cheops   (12.08.2007 в 10:26)   письмо автору
 
   для: Buhen   (12.08.2007 в 09:16)
 

>Да я так определяю рамер файла находящегося на сервере. В чем все таки проблема?
На том же сервере, где находится скрипт или на удалённом сервере?

   
 
 автор: Buhen   (12.08.2007 в 10:01)   письмо автору
 
   для: Buhen   (12.08.2007 в 09:16)
 

Все код мой работает только почему-то файл размером 2.6 мб он отказывает загружать на сервер а файлы размером 30-300кб он свободно загружает. Срабатывает условие(Вы не выбрали файл для загрузки) Хотя я его выбрал. Хотя трафик идет и он пытается его загрузить.
Вот сам код:

<?
$category 
$_POST['category'];
if(!empty(
$_FILES['filename']['tmp_name']))
        {
            
    
// Извлекаем из имени файла расширение
    
$ext strtolower(strrchr($_FILES['filename']['name'], ".")); 
    
// Разрешаем загружать файлы только определённого форматм
    
$extentions = array(".rar",".zip",".exe",".msi");
    
// Проверяем входит ли расширение файла
    // в список зарегистрированных
    
if(in_array($ext$extentions))
    {

$query_add "INSERT INTO downloads 
(download_file_name, download_file, 
description_file, category_file, 
url_programm, author, version_file, cat_id, 
downloads_file, insert_date) VALUES ('"
.
addslashes($_POST['download_file_name']).
"', '".addslashes($_FILES['filename']
[
'name'])."', '".
addslashes($_POST['description_file'])."', 
'"
.addslashes($_POST['category'])."', '".
addslashes($_POST['url_programm'])."', '".
addslashes($_SESSION['login'])."', '".
addslashes($_POST['version_file'])."', '".
addslashes($_GET['cat_id'])."', '0', \"".
date("Y:m:d H:i")."\")";
            
mysql_query ($query_add);
            if (
mysql_errno() != 0)
            {
              echo 
"<p class='navig'>Произошла ошибка при добавлении файла";
            }
            else
            {
             echo 
"";
          }

      
// Сохраняем файл в текущей директории
      
if(copy($_FILES['filename']
[
'tmp_name'], "files/$category/".
$_FILES['filename']['name']))
      {
        echo 
"<p class='navig'>Файл успешно 
загружен - <a href=files/
$category/".
$_FILES['filename']['name'].">".
$_FILES['filename']['name']."</a>";
      }
    }
    else
    {
      
// Файл с незарегистрированным расширением
      
echo "<p class='navig'>Разрешена 
загрузка только заархивированных файлов"
;
    }
    
    }
        else
    {
        echo 
"<p class='navig'>Вы не 
выбрали файл для загрузки"
;
    }
?>

   

Сообщения:  [1-10]   [11-13] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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