我想为我的用户制作一个简单的头像系统。
用法很简单,每张上传的头像都由用户命名,例如:
<a>...$username.'.jpg';..</a>
所以真的不需要数据库。当用户登录时,我只需将文件类型附加到已经(来自数据库)所需的用户名。
我关心的是默认图像,它在用户设置自己的图像之前使用。处理这个问题的最佳方法是什么?创建用户帐户时,是否可以创建/复制默认图像到用户头像文件夹?
我知道我可以使用数据库(默认值)或检查是否设置了用户图像等来实现这一点,但我想让它尽可能简单。
提前致谢 :)
文件将做什么的非常简单的示例。我建议当然让它更安全。
$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');
检查文件系统上是否存在用户的头像:
我建议将图像名称保存在数据库中,扩展名为. 人们可能想要上传 PNG 或 GIF 图像,而不是经典的 JPG。
您尝试做的一个简单示例可能是...
当用户在您的网站上注册时,他或她可以上传或不上传图片。
在此过程中进行验证以了解是否有要上传的图像。此外,如果进程中有一个文件,请验证它的扩展名(使用您想要允许的扩展名声明和数组,并与传入文件进行比较)。
如果正在注册的用户没有上传图片,请在您的服务器中创建一个默认图片,例如:“users/default.jpg”。因此,在插入到您的数据库中,您必须放入您想象的“image_name”列:默认值和您的“image_ext”列:.jpg
如果正在注册的用户在此过程中上传图像,则在您的服务器中(当您验证扩展名和大小时)创建例如:“users/1.jpg”,其中“1”是用户 ID,并且也在您的插入中数据库放入您想象的“image_name”列:1 和您的“image_ext”列:.jpg
要检索图像,只需执行一种select * from您想要的用户 ID,然后输入您的 html:echo "<img src='users/".$row['image_name'].$row['image_ext']."'/>";就这样,您就完成了。