我正在用 PHP 创建一个在线游戏,用户可以在其中创建可玩的角色。每个角色都可以有一个用户上传的肖像。一个玩家可以同时拥有多个角色,并且他们的图片可以随时更改。自然地,必须调整图片大小并重新压缩以避免大文件。这是我的问题:
当玩家更改他的数据(其中包括图片),然后点击“保存”,服务器端验证启动。它检查诸如非唯一字符名称、空必填字段等内容。如果发现任何错误,他们被显示。在这种情况下,表格应该预先填充玩家输入的数据,因此他只需更改错误位,而不是重新输入所有内容。但是,如何将图片保存在这种“临时”状态?
我无法预先填充文件上传字段,浏览器不允许这样做。如果我将它保存在一个临时文件中,则必须在某个时候清理图片,因为玩家可以简单地关闭他的浏览器并中止整个过程。那应该是什么时候?我应该为临时文件选择什么文件名?如果玩家在两个浏览器选项卡中打开同一个角色进行编辑,它们不应该发生冲突(每个都应该有自己的副本)。
你将如何解决这个问题?