为了账号安全,请及时绑定邮箱和手机立即绑定

verifyImage()函数不能调用

<?php
require 'string.func.php';
function verifyImage($type = 1, $length = 4, $sess_name = "verify") {
	// 创建画布
	// 通过GD库做验证码
	$width = 80;
	$height = 30;
	$image = imagecreatetruecolor ( $width, $height );
	$white = imagecolorallocate ( $image, 255, 255, 255 );
	$black = imagecolorallocate ( $image, 0, 0, 0 );
	// 用填充矩形填充画布
	imagefilledrectangle ( $image, 1, 1, $width - 2, $height - 2, $white );
	$chars = buildRandomString ( $type, $length );
	
	$_SESSION [$sess_name] = $chars;
	$fontfiles = array (
			"MSYH.TTC",
			"MSYHBD.TTC",
			"SIMKAI.TTF",
			"SIMLI.TTF",
			"STZHONGS.TTF" 
	);
	for($i = 0; $i < $length; $i ++) {
		$size = mt_rand ( 14, 18 );
		$angle = mt_rand ( - 15, 15 );
		$x = 5 + $i * $size;
		$y = mt_rand ( 20, 26 );
		$fontfile = "../fonts/" . $fontfiles [mt_rand ( 0, count ( $fontfiles ) - 1 )];
		$color = imagecolorallocate ( $image, mt_rand ( 50, 90 ), mt_rand ( 80, 200 ), mt_rand ( 100, 150 ) );
		$text = substr ( $chars, $i, 1 );
		imagettftext ( $image, $size, $angle, $x, $y, $color, $fontfile, $text );
	}
	
		for($i = 0; $i < 50; $i++) {
			imagesetpixel ( $image, mt_rand ( 0, $width - 1 ), mt_rand ( 0, $height - 1 ), $black );
		}
	
	header ( "content-type:image/gif" );
	imagegif ( $image );
	imagedestroy ( $image );
}
?>



-- 以上代码能正常显示验证码,但在getverify.php调用verifyImage()的函数的时候就显示不出来。


<?php
require_once '../include.php';
verifyImage();
?>

请问是怎么回事呢?

还有就是verifyImage()函数如果完全按照老师的加直线,就会出现错误,显示不出验证码。


正在回答

2 回答

你设置下PHP配置文件中output_buffering=4096,接着在查看下当前页面是否有输出

应该就没有问题了

^-^...

0 回复 有任何疑惑可以回复我~
#1

weyvin 提问者

谢谢KING的回答 PHP配置文件默认就是4096的,那要怎么处理呢?
2014-11-26 回复 有任何疑惑可以回复我~
#2

weyvin 提问者 回复 weyvin 提问者

对了, 我是用xampp 模拟PHP环境的
2014-11-26 回复 有任何疑惑可以回复我~
#3

慕工程7846985 回复 weyvin 提问者

wamp同求啊
2016-04-03 回复 有任何疑惑可以回复我~

我的也没有这个函数,我用的是5.1.6版本的

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
手把手教你实现电商网站后台开发
  • 参与学习       117285    人
  • 解答问题       1999    个

手把手教你用PHP搭建电子商务平台,由浅入深教你搭建电商系统

进入课程

verifyImage()函数不能调用

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信