请教php实现的图片验证码,为什么换了台机器就不行了呢 楼主抓到了点子上了phpinfo,session auto start是on,改为off如果不想要随机传值的这种,可以出问题,这个论坛比较常用.比如说 1+1=多少,呵呵. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 楼主抓到了点子上了phpinfo,session auto start是on,改为off如果不想要随机传值的这种,可以出问题,这个论坛比较常用.比如说 1+1=多少,呵呵. 楼主自已找到问题了.直接把on改成off另外如果觉得这种方式不好,可以学论坛提一个简单的问题.比如说1+1= 确认原因了,就是因为session用户登陆也报错,总之就是跟session有关的就总传空值,这是咋回事呀~~~我把auto_start整off了也不灵~~ $_SESSION['rand_num'] 应该是空值~我看不到你在调用前在那里生成数值 帮你改了一下~另外不要把数值放到页面$string=$_SESSION['rand_num'];这样就可以取得数值了<?phpsession_start();//require_once('function.inc');//$string=getRandomnum(8);$string="12345678";$_SESSION['rand_num']=$string;?><form action="ipost_done.php" method="POST"><table width="800" border="0" cellpadding="0" cellspacing="0"><tr><td><p>请输入您的姓名</td><td><input type="text" size="20" maxlength="30" name="i_name"></input></td></tr><tr><td><p>请输入简短的标题</td><td><input type="text" size="20" maxlength="50" name="i_title"></input></td></tr><tr><td><p>请输入主要内容</td><td><textarea rows="8" cols="100%" name="i_text" >TEXT HERE.</textarea></td></tr><tr><td align="center"> </td><td><img src="random_code.php"></img></td></tr><tr><td>输入验证码</td><td><input name="i_code" type="text"></input></td></tr><tr><td><input type="submit" value="提交" ></input></td></tr></table></form><?phpsession_start();//require_once('function.inc');$string=$_SESSION['rand_num'];if (strlen($string)!=8 || !is_numeric($string)){ $string='[ERROR]';}$height = 20;$width = 100;$im = ImageCreateTrueColor($width,$height);$white = ImageColorAllocate($im,255,255,255);$black = ImageColorAllocate($im,0,0,0);ImageFill($im,0,0,$black);imagestring($im,6,15,0,$string,$white);Header('Content-type: image/png');ImagePng($im);ImageDestroy($im);?> 谢谢楼上几位,编码没问题,发现只是session不能跨页面~晕死11.php:<?phpsession_start();$_SESSION['tmp']='okay';echo 'session at 11 is:'.$_SESSION['tmp'];?><br /><a href="./22.php">go22</a>22.php:<?phpsession_start();echo 'session at 22 is:'.$_SESSION['tmp'];?>在22.php中是空值,找原因ing~~ 手动打开服务器的session文件,看看有没有. 解决了,我是windowsXP看了下phpinfo()是存到C:\DOCUME~1\sares\LOCALS~1\Temp\php\session下的近到C:\DOCUME~1\sares\LOCALS~1\Temp发现没有php目录,手动把php\session目录建立后问题解决 php 判断时间大小 taobao API中MD5签名总是不对[PHP] PHP中使用DomDocument的问题 请问下面这段代码,怎么24小时执行一次 想弄个表格,表格里有checkbox 如何才叫熟悉??? 获取远程网页内容问题 求助:两段php脚本为什么调试不出结果? 如何这样显示数据库里的内容? 关于刷新的问题 怎么用?手册上看到的 于生成静态页面路径的问题:
phpinfo,session auto start是on,改为off如果不想要随机传值的这种,可以出问题,这个论坛比较常用.
比如说 1+1=多少,呵呵.
直接把on改成off另外如果觉得这种方式不好,可以学论坛提一个简单的问题.
比如说1+1=
$string=$_SESSION['rand_num'];
这样就可以取得数值了<?php
session_start();
//require_once('function.inc');
//$string=getRandomnum(8);
$string="12345678";
$_SESSION['rand_num']=$string;
?>
<form action="ipost_done.php" method="POST">
<table width="800" border="0" cellpadding="0" cellspacing="0">
<tr><td><p>请输入您的姓名</td><td><input type="text" size="20" maxlength="30" name="i_name"></input></td></tr>
<tr><td><p>请输入简短的标题</td><td><input type="text" size="20" maxlength="50" name="i_title"></input></td></tr>
<tr><td><p>请输入主要内容</td><td>
<textarea rows="8" cols="100%" name="i_text" >TEXT HERE.</textarea></td></tr>
<tr><td align="center"> </td><td><img src="random_code.php"></img></td></tr>
<tr><td>输入验证码</td><td><input name="i_code" type="text"></input></td></tr>
<tr><td><input type="submit" value="提交" ></input></td></tr>
</table>
</form><?php
session_start();
//require_once('function.inc');
$string=$_SESSION['rand_num'];
if (strlen($string)!=8 || !is_numeric($string)){
$string='[ERROR]';
}
$height = 20;
$width = 100;
$im = ImageCreateTrueColor($width,$height);
$white = ImageColorAllocate($im,255,255,255);
$black = ImageColorAllocate($im,0,0,0);ImageFill($im,0,0,$black);
imagestring($im,6,15,0,$string,$white);Header('Content-type: image/png');
ImagePng($im);ImageDestroy($im);
?>
11.php:
<?php
session_start();
$_SESSION['tmp']='okay';
echo 'session at 11 is:'.$_SESSION['tmp'];
?>
<br /><a href="./22.php">go22</a>22.php:
<?php
session_start();
echo 'session at 22 is:'.$_SESSION['tmp'];
?>在22.php中是空值,找原因ing~~
看了下phpinfo()是存到C:\DOCUME~1\sares\LOCALS~1\Temp\php\session下的
近到C:\DOCUME~1\sares\LOCALS~1\Temp发现没有php目录,手动把php\session目录建立后问题解决