[英]How to upload default picture if user delete the picture?
所以,如果用戶單擊刪除按鈕,我想制作圖片配置文件將是 user.jpg(這是默認圖片)。
這是我的 controller:
public function update()
{
$fileimg = $this->request->getFile('img');
$oldimg= $this->request->getVar('oldimage');
$defaultimg= $this->request->getVar('defaultimage');
if ($fileimg == 'user.jpg') {
$uploadImg = $defaultimg;
}
if ($fileimg->getError() == 4) {
$uploadImg= $oldimg;
} else {
$uploadImg = $fileimg->getRandomName();
$fileimg->move('img/', $uploadImg);
if ($oldimg != 'user.jpg') {
unlink('img/' . $oldimg);
}
}
當我單擊刪除按鈕圖像時,圖像將是 user.jpg 然后我單擊按鈕上傳但圖像不會更改為 user.jpg,但始終顯示舊圖片。 對不起英語不好。
將圖像名稱寫入數據庫中的某處,通常是在用戶配置文件表中。 它將使您的生活更輕松,並且您可以隨時訪問它。 然后在你的 model 中,你將能夠看到是否沒有圖像並返回默認圖像。
我不確定你的getRandomName()
在做什么,但一些 hash function (sha1,md5 ...)足以創建文件名以避免可能的名稱沖突。
不妨這樣想:
默認圖片不是用戶願意保存到數據庫中的數據。 它更像是一個占位符。 進一步思考,可以在視圖中處理。 如果用戶個人資料圖片未設置或存在,則顯示默認圖片。 為了防止手動輸入,您可以將其設為全局數據或配置值或常量。 但關鍵是它是占位符,而不是數據。
快樂的編碼...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.