批改狀態(tài):合格
老師批語:
<form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>" method="POST" enctype="multipart/form-data"> <!-- 用隱藏域設(shè)置允許上傳的文件大小,僅考參考 --> <input type="hidden" name="MAX_FILE_SIZE" value="542488"> <fieldset> <legend align="center"> 文件上傳 </legend> <p> <strong>選擇文件:</strong> <input type="file" name="upload"> </p> </fieldset> <p align="center"> <button type="submit" name="submit" > 上傳 </button> </p> </form> <?php if ($_SERVER['REQUEST_METHOD'] == 'POST'){ echo '判斷請求類型為post成功<br>'; if (isset($_FILES['upload'])){ echo '判斷控件數(shù)據(jù)成功<br>'; $allow = ['image/jpg','image/jpeg','image/png',]; if (in_array($_FILES['upload']['type'], $allow)){ echo '判斷文件為圖片成功<br>'; if (move_uploaded_file($_FILES['upload']['tmp_name'], "upload/{$_FILES['upload']['name']}")){ echo '判斷文件上傳成功<br>文件名為'; echo $_FILES['upload']['name']; } }else{ echo '文件非圖片類型上傳失敗<br>'; } } if ($_FILES['upload']['error'] > 0 ){ echo '錯誤原因'; switch ($_FILES['upload']['error']) { case 1: echo '文件超過了php.ini配置中設(shè)置的大小'; break; case 2: echo '文件超過了表單中常量設(shè)置的大小'; break; case 3: echo '僅有部分文件被上傳'; break; case 4: echo '沒有文件被上傳'; break; case 6: echo '沒有可用的臨時文件夾'; break; case 7: echo '磁盤已滿,寫入失敗'; break; case 8: echo '上傳意外中止'; break; default: echo '系統(tǒng)未知錯誤'; break; } if (file_exists($_FILES['upload']['tmp_name']) && is_file($_FILES['upload']['tmp_name'])) { unlink($_FILES['upload']['tmp_name']); } } } ?>
對每一步判斷進行輸出檢查,更加容易檢查錯誤和修改
微信掃碼
關(guān)注PHP中文網(wǎng)服務(wù)號
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://ipnx.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號