簡體   English   中英

無法打開 stream:權限被拒絕打開服務器

[英]failed to open stream: Permission denied open server

我的目標是將多個文件下載到本地主機上的文件夾中。 我正在使用 HTML 表格上傳它們。

這是代碼(真的很抱歉,我無法提供代碼的可執行版本的鏈接,因為它依賴於太多其他文件和數據庫,如果有人知道方法,請告訴我)

foreach ($_FILES as $value) {
    $dir = '/';
    $filename = $dir.basename($value['name']);

    if (move_uploaded_file($value['tmp_name'],$filename)) {
        echo "File was uploaded";
        echo '<br>';
    }
    else {
        echo "Upload failed";
        echo '<br>';
    }
}

所以這段小代碼給了我一個錯誤: 在此處輸入圖像描述

這是代碼行:

問題是地址是正確的,我嘗試將它輸入到我的文件目錄中並且它工作正常,我已經看到一些關於其他人的相關問題的建議,應該使用 // 或 \,但我的版本工作得很好:我已經檢查了 $_FILES 里面的內容,如果有人想要幫助的話,這里是:

在此處輸入圖像描述

如果有人可以提供幫助,非常感謝!

您正在嘗試將文件移動到無效(或不存在)的路徑。 對於測試,您將編寫

 $dir = 'c:/existing_dir/';
 $filename = $dir.basename($value['name']);

如果要將文件移動到與正在運行的文件相關的文件夾,請嘗試

 $dir = '../../directory/';// '../' -> one directory back
 $filename = $dir.basename($value['name']);

通過$dir = '/';開始你的文件路徑您是說將文件存儲在根文件夾中,我假設C:

Apache 如果正確配置不應該允許您訪問C:\

所以要么做

$dir = '../';
$filename = $dir.basename($value['name']);

使其成為相對路徑或保留$dir = '/'; 完全出局

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM