所以在我的 HTML 标记中,我有一个像这样的图像标记:
<img src="image_generation.php" alt="template" id="image" />
'src' 属性链接到一个 PHP 脚本,该脚本使用其中定义的几个变量生成图像,这些变量大多是随机生成的。
现在,我想要做的是访问包含图像生成脚本的页面中的那些随机变量。我想我可以发送 cookie 并在图像标签之后访问它们,因为它们在技术上应该可以随时用于包含文件。我不想发送太多信息,只是几个(10-20)变量。不确定在这种情况下会话是否是更好的选择,因为我必须发送几个 cookie。会话也会带来问题,因为包含脚本会获取旧会话,我必须刷新页面才能获取先前生成的图像的值。我想我也可以设置一个数据库并在包含脚本中访问数据库,但是这些变量是临时的,我必须删除它们,这对我来说似乎很麻烦。
图像生成脚本结束于:
header('Content-type: image/png');
imagepng($image);
imagedestroy($image);
并且在标头调用之前不能将任何内容发送到浏览器,否则图像将不会显示。如果我使用 cookie 或会话,则image_generation.php
必须同时发送图像并设置 cookie/会话。
没有一个选项(cookies、会话或数据库)真正让我信服,因为在这种特殊情况下每个选项都存在问题。你能想出解决这个问题的方法吗?谢谢。
主要编辑#1: 包含脚本获取先前生成的图像的会话而不刷新/设置 cookie 和/或包含脚本中的会话之前/之后发送图像而没有输出缓冲不会造成问题。