0

我正在为我的项目使用 CodeIgniter。我快结束了,我现在无法更改会话“引擎”。我有验证码图片可在 url 上发表评论:

example.com/captcha

和代码:

this->load->library('session');
header("Content-type: image/jpeg");
/*
* Image generation code...
*/
$this->session->set_userdata('captcha', strtolower($word));
imagejpeg($image);
imagedestroy($image);

通常当我提交我使用的表格时

<img src="example.com/captcha" />

生成图像并设置用户数据。但这一次它不起作用。$this->session->userdata('captcha') 为空。

但是如果我直接访问图像 sessiondata 被设置并且在下一次提交时有一个 $word 是在直接访问图像/验证码时生成的。什么可能导致这种情况?

4

1 回答 1

0

该图像位于带有“www”前缀的域上,而索引位于 domain.com 上。我通过为会话设置数据库来解决这个问题。我已经看到一页访问有两个条目具有不同的 session_id。

于 2012-05-30T07:06:48.210 回答