簡體   English   中英

將圖片上傳到目錄時遇到問題

[英]Having issues uploading images to directory

我有文件類型輸入,我想上傳圖像。 我像5次一樣重寫代碼,以為我做錯了,但到目前為止我看不到它。 因為它不起作用。 HTML代碼

<form method="post" enctype="multipart/form-data">
<input type="file" name="primaryimg" id="primaryimg"></br>
<input type="submit" value="Sell!" name="uploaditem" />
</form>

這是我的PHP代碼

if(isset($_POST['uploaditem'])){
    $filebasename = basename($_FILES['primaryimg']['name']);
    $ext = strtolower(substr($filebasename, strrpos($filebasename, '.') + 1));
    if (($ext == "jpg" || $ext == "gif" || $ext == "png" || $ext == "jpeg") && ($_FILES['primaryimg']['type'] == "image/jpg" || $_FILES['primaryimg']['type'] == "image/gif" || $_FILES['primaryimg']['type'] == "image/png" || $_FILES['primaryimg']['type'] == "image/jpeg")){
        $desired_dir="img/products/sellers/$user/$itemname/";
        $file_name=$_files['primaryimg']['name'];
        if (file_exists($desired_dir . $file_name)){
            $errormsg="Filename already exists.";
        }else{
            move_uploaded_file($_FILES['primaryimg']['tmp_name'], $desired_dir . $file_name);
            $errormsg = $file_name . "successfully uploaded.";
        }
    }else{
        $errormsg = "Error! File is not a valid jpg, gif, png or jpeg";
    }
}

所以我嘗試回顯$filebasenamebasename($_FILES)所在的位置,以查看其獲取的值。 顯然它是空的。 我做了一個$lol=$_POST['primaryimg']; 並回顯了$lol ,它確實顯示了項目名稱。 因此由於某些原因, $files保持為空,而move_upload_file也無效。

這就是我所看到的 代碼本身 代碼回顯/打印

那些把錯誤報告放在我看到以下錯誤

注意:未定義的索引:第21行的D:\\ Dropbox \\ UoC \\ phphosting \\ buyathing \\ sellanitem.php中的primaryimg

在顯示以下錯誤后,該圖像不是jpg / jpeg ...它應打印文件名,並且您可以看到它是EMPTY。

我去了php.ini,看看是否打開了file_upload 我嘗試上傳的圖片為550k,但我的最大文件大小為2M,所以也不是問題所在。 我已經搜尋了5個小時,但是沒有運氣。 因此,如果有人在我迷失之前能幫助我,那就太好了:')預先感謝。

我認為您沒有創建目錄,當您移動文件時,應該存在一個文件夾。首先,您應該為此目錄創建一個目錄img/products/sellers/".$user."/".$itemname."/

使用php基本功能mkdir()

在這里您還可以找到更多信息。 然后嘗試以特定位置上傳圖片。希望這對您有所幫助,我會對其進行調查。

暫無
暫無

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

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