Загрузка не работает

У меня есть сценарий:

if(isset($_FILES['file_upload']) && $_FILES['file_upload']['error'] != 4) {
                    if(!file_exists('./Hier_je_files/'.$_FILES['file_upload']['name'])) {
                          if($_FILES['file_upload']['error'] > 0) {
                            echo '<script type="text/javascript">alert("'.$_FILES['file_upload']['error'].'")</script>';
                          } else {
                            chmod("./Hier_je_files/", 0755);
                            move_uploaded_file($_FILES["file_upload"]["tmp_name"], "./Hier_je_files/" . $_FILES["file_upload"]["name"]);
                            $_POST['bestand'] = $_FILES["file_upload"]["name"];
                            chmod("./Hier_je_files/".$_POST['bestand'], 0755);
                          }
                    } else {
                        echo '<script type="text/javascript">alert(\'Bestandnaam helaas bezet!\')</script>';
                    }
                } else {
                    chmod("./Hier_je_files/".$_POST['bestand'], 0755);
                }

И я получаю такую ​​ошибку:

Предупреждение: chmod () [function.chmod]: операция не разрешена в /home/remon/domains/remondb.eu/public_html/Handeler/control.php в строке 347

Предупреждение: move_uploaded_file (./ Hier_je_files / download_r2.png) [function.move-uploaded-file]: не удалось открыть поток: доступ запрещен в /home/remon/domains/remondb.eu/public_html/Handeler/control.php в сети 348

Предупреждение: move_uploaded_file () [function.move-uploaded-file]: невозможно переместить '/ tmp / phpMuFzaS' в './Hier_je_files/download_r2.png' в /home/remon/domains/remondb.eu/public_html/Handeler/ control.php в строке 348

Предупреждение: chmod () [function.chmod]: нет такого файла или каталога в /home/remon/domains/remondb.eu/public_html/Handeler/control.php в строке 350

Предупреждение: размер файла () [function.filesize]: stat не удалось для ./Hier_je_files/download_r2.png в /home/remon/domains/remondb.eu/public_html/Handeler/control.php в строке 358

По мнению других, этот скрипт работает нормально, мой хост блокирует загрузку или скрипт плохой?


person user2897922    schedule 08.12.2013    source источник
comment
Пахнет проблемой с разрешением. Взгляните здесь stackoverflow.com/questions/10990/   -  person PsychoMantis    schedule 08.12.2013


Ответы (1)


Пользователь, от имени которого работает PHP на вашем сервере, не имеет разрешения на использование chmod. Следовательно, у вас нет разрешения на запись в файл. Вероятно, вам все равно не следует использовать chmod в своем скрипте, и, похоже, ваш хост не позволяет этого.

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

person randak    schedule 08.12.2013