簡體   English   中英

如何在mysql中存儲用戶的個人資料圖片

[英]How to store user's profile picture in mysql

我正在為 iOS 開發一個聊天應用程序。

在這個應用程序中,用戶可以將圖像設置為他們的個人資料圖片。

所以我的問題是,我怎樣才能在 mysql 中存儲圖像?

我看到很多人說,只需將圖像(在設備上)的鏈接存儲在 mysql 中,但是圖像如何在不同的 iOS 設備上從數據庫中可用,對嗎?

我也嘗試過使用 BLOB,但是當顯示表行(json 編碼)時,BLOB 字段的值顯示為 NULL。

請簡要回答。

謝謝,

這相當簡單:) 物理圖像將存儲在服務器上,您將僅在數據庫中存儲圖像名稱或圖像的相對路徑,或者您想要的任何內容。 因此,如果您願意,您將不得不在您的數據庫中存儲一個指向該圖像的“指針”。

所以:
- 服務器上文件夾中的圖像
- 在 DB -> path/to/file 或 file_name.format 或者如果你知道你的路徑,並且你知道你的格式只是 file_name

希望這可以幫助! :D

可能會遲到但我剛剛找到了這樣做的方法。

方式 1:從用戶獲取圖像並使用 id(首選主鍵)並在您的 public_html 創建圖像文件夾中重命名。 為該文件夾設置適當的權限。 並將圖像保存在該文件夾中,該圖像的 url 將存儲在 DB 列中。 喜歡

https://www.example.com/images/user1.png采用這種風格。

方式2:使用其他東西重命名該圖像,如用戶的電子郵件,用戶名等

方式 3:在上述 2 種情況下,其他用戶、黑客可能會嘗試使用 ID、電子郵件等下載圖像。這就是為什么,另一種方法是您可以為配置文件生成哈希並檢查哈希是否已經存在在列中如果退出然后生成另一個。 可能我不認為有可能生成類似的哈希值。但您可以檢查以避免將來出錯。 現在使用生成的哈希重命名圖像。

您還可以僅使用存儲生成的哈希來減小該鏈接列的大小,並在您的應用程序中聲明一些變量並實現

https://www.example.com/images/generated_hash.png

這里的 url 在所有列中都相同,但不包括該哈希鍵。 您只能存儲該哈希值。

希望它會有所幫助

參考自: https : //www.techupdates.live/how-to-save-profile-picture-in-php-in-5-simple-steps/

暫無
暫無

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

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