关于制作图形验证码+session的问题。

rardge 2005-10-14 10:24:57
大家好。
我的三个程序列在下面,大家帮忙看看程序本身是否有问题。
我现在碰到一个很奇怪的问题,在一台机器上可以正确运行,但在另外一台机器上不行,两台机器都是 WinXP SP2 + VMWare(FreeBSD + Apache 2.0 + PHP 4.4.0)。
具体表现为verify.php程序重新建立一个session,所以也就得不到正确结果了。
起先怀疑是不是防火墙的原因,但我把那台机器的防火墙都关闭了,还是不行。而且想想如果是防火墙的问题,那么我应该连CSDN或者其它网站的图形验证也不能通过才是,可事实是那些网站都访问正常。
请做过验证码的大侠们请指教一下,程序本身有没有问题?
谢谢!
--------------------------------------------------------------
main.html
--------------------------------------------------------------
<html>
<head><title>Test</title></head>
<body>
<form method=post action="verify.php">
<input type="text" name="verify_code">
<img src="buildimg.php" border="0" alt="验证码"><br>
<input type="submit" name="submit">
</form>
</body>
</html>
--------------------------------------------------------------
buildimg.php
--------------------------------------------------------------
<?php
$img = imagecreate(50, 20);
$white = imagecolorallocate($img, 0xFF, 0xFF, 0xFF);
$black = imagecolorallocate($img, 0x00, 0x00, 0x00);

srand((int)time());
for($i = 0; $i < 6; $i++) {
$text .= rand(1, 9);
}

session_start();
$_SESSION['code'] = $text;
imagestring($img, 3, 1, 1, $text, $black);

header("Content-Type: image/png");
imagepng($img);
imagedestroy($img);
?>
--------------------------------------------------------------
verify.php
--------------------------------------------------------------
<?php
session_start(); //总是新建立一个sessionid
print $_SESSION['code'] . "<br />";
print $_POST['verify_code'] . "<br />";
exit();
?>
--------------------------------------------------------------
...全文
213 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
rardge 2005-10-14
  • 打赏
  • 举报
回复
唠叨老大,我把 session.use_cookies 设置为 On 后,果然可以运行了。
它一定要用cookie么,我如果真的不想使用 cookies,怎么办呢?
还望指教。
rardge 2005-10-14
  • 打赏
  • 举报
回复
我在其他程序中也一直使用session,所以它应该是正常的,目录配置是没有问题,session.auto_start 是 off 。
cookie 倒是真的设置为禁用,客户端和服务器端都是这样,服务器端 session.use_cookies 设置为off。难道是这个问题?
两位老大,也就是说,我的程序本身是没有问题的,是么?
ashchen 2005-10-14
  • 打赏
  • 举报
回复
先测试session是否正常吧
xuzuning 2005-10-14
  • 打赏
  • 举报
回复
1、可能禁用了cookie
2、可能设置了自动session
3、没有正确设置session的临时文件目录

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧