首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

PHP 圖片上傳即時預覽:上傳後預覽、確認保存或刪除重傳

     編輯:PHP 相關知識

核心函數 upload($data)

支援兩種操作模式:upload(上傳)與 delete(刪除暫存檔)。使用 Session 記錄暫存檔路徑,確保同一使用者同一時間只有一張暫存圖。

function upload($data) {
    // 參數檢查:file, img_tag_id, img_dir, max_file_size, type_array, sub_type
    // 驗證檔案類型、大小、目錄是否存在
    // 產生唯一檔名:時間 + 隨機數 + 原始檔名
    // move_uploaded_file 移動至目標目錄
    // 寫入 $_SESSION['name'] 與 $_SESSION['imgpath']
    // 回傳圖片路徑供前端預覽
}

前端整合(含 iframe 無刷新提交)

<form action="ad.php" method="post" enctype="multipart/form-data" target="frame">
    <input type="file" name="file" class="input">
    <input type="submit" name="submit_upload" value="上傳">
    <input type="submit" name="submit_delete" value="刪除">
    <iframe id="frame" name="frame" width="0" height="0" frameborder="0" src="about:blank"></iframe>
</form>
<img id="picview" height="100" style="display:none;">
<script>
if("<?php echo $imgpath; ?>") {
    parent.document.getElementById("picview").src = "<?php echo $imgpath; ?>";
    parent.document.getElementById("picview").style.display = "block";
}
</script>

流程說明

  1. 使用者選擇圖片點擊「上傳」,表單提交至隱藏 iframe,頁面不跳轉。
  2. 後端驗證通過後儲存暫存檔,回傳 <script> 通知父視窗更新 <img> src 並顯示。
  3. 使用者確認無誤可送出正式表單;若不滿意點「刪除」,後端刪除暫存檔並清除 Session,前端隱藏預覽圖。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved