Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何存储用户';mysql中的个人资料图片_Php_Ios_Mysql - Fatal编程技术网

Php 如何存储用户';mysql中的个人资料图片

Php 如何存储用户';mysql中的个人资料图片,php,ios,mysql,Php,Ios,Mysql,我正在为iOS开发聊天应用程序 在这个应用程序中,用户可以设置一个图像作为他们的个人资料图片 所以我的问题是,我怎样才能在mysql中存储图像 我看到很多人说,只需将图像链接(在设备上)存储在mysql中,但如何从数据库在不同的iOS设备上获得图像 我也尝试过使用BLOB,但是当显示表行(json编码)时,BLOB字段的值显示为NULL 请简单回答 谢谢,这相当简单:)物理映像将存储在服务器上,您将只在数据库中存储映像名称或映像的相对路径,或者以您想要的方式存储。因此,如果您愿意,您必须在数据库

我正在为iOS开发聊天应用程序

在这个应用程序中,用户可以设置一个图像作为他们的个人资料图片

所以我的问题是,我怎样才能在mysql中存储图像

我看到很多人说,只需将图像链接(在设备上)存储在mysql中,但如何从数据库在不同的iOS设备上获得图像

我也尝试过使用BLOB,但是当显示表行(json编码)时,BLOB字段的值显示为NULL

请简单回答

谢谢,

这相当简单:)物理映像将存储在服务器上,您将只在数据库中存储映像名称或映像的相对路径,或者以您想要的方式存储。因此,如果您愿意,您必须在数据库中存储一个指向该图像的“指针”

所以:
-服务器上文件夹中的图像
-在DB->path/to/file或file\u name.format中,或者如果您知道自己的路径,并且知道自己的格式,则只需使用file\u name即可


希望这有帮助!:D

可能会迟到,但我刚刚找到了办法

方法1:从用户处获取图像,并使用id(Pref.Primary key)重命名,然后在公共文件夹中创建图像。为该文件夹设置适当的权限。并将图像保存在该文件夹中,该图像的url将存储在DB列中。像

以那种方式做

方法2:使用其他东西来重命名该图像,如用户的电子邮件、用户名等

方式3:在上述两种情况下,其他用户、黑客可能会尝试使用ID、电子邮件等下载图像。 这就是为什么,另一种方法是为profile生成一个散列,检查该散列是否已经存在于if exits列中,然后生成另一个散列。可能我不认为有可能生成类似的散列。但您可以检查以避免将来出现错误。现在使用生成的散列重命名图像

您还可以仅使用存储生成的哈希来减小该链接列的大小,并在应用程序中声明一些变量并实现

在这里,url在除散列键之外的所有列中都是相同的。 您只能存储该散列

希望能有所帮助


参考来源:

您是在设备上保存图像还是从Web服务器检索图像?如果他正在开发聊天应用程序。。。?他确实有一个网络服务器,你不觉得吗我想从web服务器检索图像…在下面的答案旁边,您可以将图像作为base64存储在数据库中。不过,这会将其大小增加33%。谢谢,但我没有太多的经验与所有这些。。。如何通过iOS应用程序在服务器上上传图像?这难道不需要filezilla之类的东西吗?你必须使用C代码。。。不幸的是,我不知道C#所以我在这里帮不上忙…C夏普。。。它是面向对象C++(更多关于这里->)或任何其他的iOS应用程序开发环境:D@AresDraguna您可能需要做更多的研究。@AshishGogna iOS应用程序可以使用C#编写。