【发布时间】:2016-08-23 07:57:10
【问题描述】:
我的 xataface 网站有一个使用 PHPWord 创建字母的操作。我正在尝试使用签名图像签署这封信,但我不想只将图像文件保留在服务器上。我希望它是从 PHP 创建的,所以我可以进行一些权限检查,并且只向“允许查看它的人或页面”显示签名。
我的第一个想法是创建一个 PHP 文件,将图像内联作为数据,理论上如果请求来自 xataface,则可以显示签名,如果不是,则可以显示相同大小的空白图像,但是这个 PHP文件不在 Xataface 上下文中,因此它无法判断谁登录了:-( 它确实有效 - 图像在文档中是正确的,只是我无法控制谁能看到它。
接下来我尝试将上述 PHP 的功能包装到一个动作处理程序中,然后
在生成 PHPWord 文档的脚本中使用 $section->addMemoryImage("http://localhost/site/index.php?-action=sigfile");,但在 PHP 日志中获得了“不支持的图像类型”(没有进入处理程序)。
我也尝试将“工作图像代码”放入模板/sigfile.html,但这也得到“不支持的图像类型”(如果我直接进入 PHP 文件,它可以工作。如果我将它包装在任何它没有的 xataface 东西)
我唯一能做的就是使用一些“隐藏密钥”,例如PHPWord 文档执行$section->addMemoryImage("http://localhost/site/sig.php?a=1&b=2&c=3");,而脚本只是在寻找b=2 - 其余的只是噪音,但这并不安全......
另一个想法是让 php 将图像写入磁盘(服务器端),使用它然后删除。不确定这有多安全。
我错过了一些简单的方法吗?
【问题讨论】: