我想为我的用户制作一个简单的头像系统。
用法很简单,每个上传的头像图像都由用户命名,例如:
<a>...$username.'.jpg';..</a>
所以真的不需要数据库。 当用户登录时,我只是将文件类型附加到已经(从数据库中)所需的用户名。
我在这里关注的是默认图像,在用户设置自己的图像之前使用。处理这个问题的最佳方法是什么?在创建用户帐户时,是否有可能在用户头像文件夹中创建/复制默认图像?
我知道我可以使用数据库(默认值)或检查用户图像是否已设置等来实现此目的但我希望尽可能简单。
提前致谢:)
答案 0 :(得分:1)
该文件的功能非常简单。我当然建议让它更安全。
$filename = $_GET["avatar"];
$path = 'path/to/your/files';
if (!file_exists($path.$filename.'.jpg'))
{
$filename = "default";
}
Header('Content-type: image/jpg');
readfile($path.$filename.'.jpg');
答案 1 :(得分:1)
检查文件系统上是否存在用户的个人资料图片:
我建议将图片名称保存在数据库中及其扩展名。人们可能想要上传PNG或GIF图像,而不是传统的JPG。
答案 2 :(得分:1)
您尝试做的一个简单示例可能是......
当用户在您的网站上注册时,他或她可以上传或不上传图片。
在此过程中进行验证,以确定是否有要上传的图像。此外,如果进程中有文件,请验证它的扩展名(声明和包含您要允许的扩展名的数组,并与incomming文件进行比较)。
如果正在注册的用户未上传图像,请在服务器中创建默认图像,例如:“users / default.jpg”。因此,在插入数据库中,您必须输入虚构的“image_name”列:default并在“image_ext”列中:.jpg
如果正在注册的用户在您的服务器中(在验证扩展名和大小时)上传过程中的图像,请创建例如:“users / 1.jpg”,其中“1”是用户ID,以及插入数据库中的数据库放入虚构的“image_name”列:1并在“image_ext”列中:.jpg
要检索图片,只需执行一种select * from
您想要的用户标识,然后输入您的html:echo "<img src='users/".$row['image_name'].$row['image_ext']."'/>";
,就这样,您就完成了。