簡體   English   中英

php刪除文件/檢查文件是否存在

[英]php delete a file / check file existence

我在網站上上傳圖片時遇到了一個小問題。 我允許用戶上傳圖片,但是好像服務器需要一些時間才能實際執行命令。

首先,它必須確保目錄中不存在具有相同名稱的文件,如果這樣做,則使用unlink($ pictureLocation)將其刪除; 然后,它使用imagejpeg($ dst_r,$ pictureLocation,$ jpeg_quality)創建新圖像;

但是,當我然后嘗試查看圖片(重定向到網站)時,它顯示的是舊照片,據說是被刪除了! 而且需要一些刷新才能正確顯示正確的圖片。 我有些不明白...:/

我在本地服務器和產品服務器上都遇到了同樣的問題,但是生產服務器需要更長的時間才能顯示正確的圖片,而在本地一次刷新​​就足夠了。

我檢查了unlink函數的輸出,它返回true,所以我猜一切都很好。

我想確保在過程完成之前不進行重定向,否則用戶會認為它不起作用...有任何想法嗎?

似乎可能是由於緩存問題。 嘗試將這些行添加到html中以防止頁面緩存

<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate"/>
<meta http-equiv="Pragma" content="no-cache"/>
<meta http-equiv="Expires" content="0"/>

另外,如果我是您,我會考慮使用新文件名插入文件(可能是29_05_01_07_30picture.png行),而不是在數據庫中進行檢查和更新。

move_uploaded_file($_FILES["file"]["name"],"upload/" .date("d_m_h_i_s"). $_FILES["file"]["name"]);

暫無
暫無

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

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