亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 PHP 中上傳不會創建臨時文件

在 PHP 中上傳不會創建臨時文件

PHP
慕田峪9158850 2023-12-15 15:05:58
我正在嘗試通過上傳表單將圖像發送到 php 腳本,但該文件沒有顯示在我的臨時文件夾中。我嘗試搜索錯誤并找到了此答案。多次檢查每個步驟后,我仍然發現自己沒有上傳文件...表格 :<form id="addImageForm" action="functions/add_image.php" method="POST" enctype="multipart/form-data">  <label for="articleImage">Select a file:</label>  <input type="file" name="articleImage" id="articleImage">  <input type="submit" class="btn btn-success" value="Submit"></form>add_image.php 腳本:<?php/* Checking request parameters */if(!isset($_FILES['articleImage']) || empty($_FILES['articleImage'])) {    echo "Error : the file is missing";    die();}/* Checking upload errors */if($_FILES['articleImage']['error'] != UPLOAD_ERR_OK) {    echo "Error : ".$_FILES['articleImage']['error'];    die();}/* Checking file size */if($_FILES['articleImage']['size'] == 0) {    echo "Error : the file is empty";    die();}/* Checking file has been uploaded to tmp */if(is_uploaded_file($_FILES['articleImage']['tmp_name'])) {    echo "Error : the file didn't upload";    die();}/* Checking file doesn't already exist */$imagePath = "img/articles/".$_FILES['articleImage']['name'];if(file_exists($imagePath)) {    echo "Error : the filename is already taken";    die();}/* Writing image */if(!move_uploaded_file($_FILES['articleImage']['tmp_name'], $imagePath)) {    echo "Error : the file coundn't be written";    die();}echo 'Success';die();?>請求已正確發送:-----------------------------45933353531894573431775954628Content-Disposition: form-data; name="articleImage"; filename="my_file.png"Content-Type: image/png[image content]-----------------------------45933353531894573431775954628--但我仍然收到“文件未上傳”的消息錯誤...正如我之前提到的,我確實檢查了我的 php conf(使用 /tmp 作為 upload_tmp_dir 編輯了正確的 php.ini 文件并將上傳限制設置為 100M),并且 /tmp 上有 777 chmod。我缺少什么?
查看完整描述

1 回答

?
嚕嚕噠

TA貢獻1784條經驗 獲得超7個贊

我已經復制并以某種方式測試了您的代碼。您不需要執行 is_uploaded_file 調用,因為這些檢查是在 move_uploaded_file 函數中進行的(https://www.php.net/manual/en/function.is-uploaded- file.php#113766)。另請檢查存儲圖像的目錄是否存在。


<?php


/* Directory where uploaded images will be placed */

$imageDir = 'img/articles';


/* Checking request parameters */

if (!isset($_FILES['articleImage']) || empty($_FILES['articleImage'])) {

    echo "Error : the file is missing";

    die();

}


/* Checking upload errors */

if ($_FILES['articleImage']['error'] != UPLOAD_ERR_OK) {

    echo "Error : " . $_FILES['articleImage']['error'];

    die();

}


/* Checking file size */

if ($_FILES['articleImage']['size'] == 0) {

    echo "Error : the file is empty";

    die();

}

/* Checking if directory exists */

if (!is_dir($imageDir)) {

    echo 'Image directory does not exist';

    die();

}


/* Checking file doesn't already exist */

$imagePath = $imageDir . $_FILES['articleImage']['name'];

if (file_exists($imagePath)) {

    echo "Error : the filename is already taken";

    die();

}


/* Writing image */

if (!move_uploaded_file($_FILES['articleImage']['tmp_name'], $imagePath)) {

    echo "Error : the file coundn't be written";

    die();

}


echo 'Success';

die();


查看完整回答
反對 回復 2023-12-15
  • 1 回答
  • 0 關注
  • 187 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號