簡體   English   中英

如果用戶刪除圖片,如何上傳默認圖片?

[英]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.

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