не работает простая закачка файла на сервер

aleksey_d

Новичок
делаю простую закачку на сервер, локально все работает, но когда выложил в сеть закачка работать отказывается.
Вот код закачки
форма:
PHP:
<html>
<head>
  <title>Загрузка файлов на сервер</title>
</head>
<body>
      <h2><p><b> Форма для загрузки файлов </b></p></h2>
      <form action="upload.php" method="post" enctype="multipart/form-data">
      <input type="file" name="filename"><br>
       <input type="text" name="name">Имя<br>
       <input type="text" name="categories">Категория<br>
      <input type="submit" value="Загрузить"><br>
      </form>
</body>
</html>
обработчик:
PHP:
<html>
<head>
  <title>Результат загрузки файла</title>
</head>
<body>
<?php
	error_reporting(E_ALL);
		require 'inc/connect.php';
		$dir = "shared_zone/muz/";
		$dt = date('Y-m-d');
   if($_FILES["filename"]["size"] > 1024*3*1024)
   {
     echo ("Размер файла превышает три мегабайта");
     exit;
   }
   // Проверяем загружен ли файл
   if(is_uploaded_file($_FILES["filename"]["tmp_name"]))
   {
     // Если файл загружен успешно, перемещаем его
     // из временной директории в конечную
     move_uploaded_file($_FILES["filename"]["tmp_name"], $dir.$_FILES["filename"]["name"]);
     
     $result = mysql_query("insert into `downloads` (`file_name`, `name`, `dir`, `categories`, `date_add`) 
     												values 
     												('".mysql_real_escape_string($_POST['name'])."',
     												 '".$_FILES['filename']['name']."',
     												 '".$dir.$_FILES['filename']['name']."',
     												 '".mysql_real_escape_string($_POST['categories'])."',
     												 '".$dt."');") or die(mysql_error());
   } 
   else {
      echo("Ошибка загрузки файла");
   }
?>


</body>
</html>
подскажите в чем причина
 

Фанат

oncle terrible
Команда форума
подскажите в чем причина
это бессмысленный вопрос.
на форуме нету ни телепатов, ни волшебников.
спрашивать можно только "как я могу узнать, в чем причина?"
ну, или на худой конец - "что я делаю не так?"

Надо проверять $_FILES["pictures"]["error"], коды смотреть в мануале
 

aleksey_d

Новичок
это бессмысленный вопрос.
на форуме нету ни телепатов, ни волшебников.
спрашивать можно только "как я могу узнать, в чем причина?"
ну, или на худой конец - "что я делаю не так?"

Надо проверять $_FILES["pictures"]["error"], коды смотреть в мануале
прошу прощения, поставил вопрос не правильно.
в чем проблема понял, оказывается скрипт не грузит файлы больше 3 mb. Порылся в интернете и нашел казалось бы разумное решение
в .htaccess вписать
php_value max_execution_time 500
php_value max_input_time 500
php_value upload_max_filesize 30M
php_value post_max_size 30M
но результат не изменился, файл грузится примерно до 42%, а затем браузер показывает страницу с ошибкой Веб-страница недоступна подключение прервано
 

Ragazzo

TDD interested
aleksey_d
это из-за того что скрипт имеет определенное время выполнения, по дефолту 30с. вроде, либо ставьте set_time_limit(0), либо пользуйтесь каким-либо загрузчиком на jquery/flash и т п
 

aleksey_d

Новичок
подскажите пожалуйста где можно посмотреть такой пример. И еще при загрузке у меня путь к файлу пишется в базу
 

Фанат

oncle terrible
Команда форума
Ragazzo
Не должно бы.
По идее, пхп запускается уже после того, как файл полностью загружен веб-сервером
 

Фанат

oncle terrible
Команда форума
aleksey_d
каков размер файла?
загружается ли файл в 2,5М при дефолтных настройках?
имели ли какой-то эффект вписанные в .htaccess настройки?
 

alekciy

Новичок
Неплохо бы определиться, шард это или своя виртуалка.
 

aleksey_d

Новичок
тогда как решить проблему... Могу с точность сказать что скрипт работает как нужно в случае если файл до 3 мб.
 

Фанат

oncle terrible
Команда форума
в phpinfo() на том сервере, который не работает, какие настройки пишет?
 

aleksey_d

Новичок
какие именно нужны настройки по закачке, в пхпинфо нашел это
post_max_size 30M
upload_max_filesize 30M
 

Absinthe

жожо
aleksey_d, ты можешь писать с соблюдением правил русского языка? Ни черта же не понятно.
 
Сверху