ホームページ  >  記事  >  バックエンド開発  >  検証コードのイメージを生成して出力します。出力が常に X の画像になるのはなぜですか?

検証コードのイメージを生成して出力します。出力が常に X の画像になるのはなぜですか?

WBOY
WBOYオリジナル
2016-06-23 13:53:15997ブラウズ


$num=" ";
for($i=0;$i $num .=rand(0,9);
}
session_start();
$_SESSION["Checknum"]=$num;
header("Content-type:image/png");
srand((double)microtime()*1000000);
$im=@imagecreate(60,20);
@imagecolorallocate($im,255,255,255);
$black=imagecolorallocate($im,0,0,0);
$gray=imagecolorallocate($im,200,200,200);
imagefill($im,0,0,$gray);
$style=array($black,$black,$black,$black,$black,$gray,$gray,$gray,$gray,$gray);
imagesetstyle($im,$style);
$y1=rand(0,20);
$y2=rand(0,20);
$y3=rand(0,20);
$y4=rand(0,20);
イメージライン($im,0,$y1,60,$y3,IMG_COLOR_STYLED);
イメージライン($im,0,$y2,60,$y4,IMG_COLOR_STYLED);
for($i=0;$i imagesetpixel($im,rand(0,60),rand(0,20),$black);
}
$strx=rand(3,8);
for($i=0;$i $strpos=rand(1,6);
imagestring($im,5,$strx,$strpos,substr($num,$i,1),$black);
$strx+=rand(8,12);
}
imagepng($im);
imagedestroy($im); 
?>


回复讨论(解决方案)

1、没有加ダウンロードGD扩展

2、程序文件有BOM头


参考下这个:

http://blog.csdn. net/u011619326/article/詳細/37744855


去掉最上面的中文,session_start() 修正一下位置,似乎就可以了

session_start();
$num=" ";
for($i=0;$i $num .=rand(0,9);
}

$_SESSION["Checknum"]=$num;
header("Content-type:image/png");
srand((double)microtime()*1000000);
$im=@imagecreate(60,20);
@imagecolorallocate($im,255,255,255);
$black=imagecolorallocate($im,0,0,0);
$gray=imagecolorallocate($im,200,200,200);
imagefill($im,0,0,$gray);
$style=array($black,$black,$black,$black,$black,$gray,$gray,$gray,$gray,$gray);
imagesetstyle($im,$style);
$y1=rand(0,20);
$y2=rand(0,20);
$y3=rand(0,20);
$y4=rand(0,20);
イメージライン($im,0,$y1,60,$y3,IMG_COLOR_STYLED);
イメージライン($im,0,$y2,60,$y4,IMG_COLOR_STYLED);
for($i=0;$i imagesetpixel($im,rand(0,60),rand(0,20),$black);
}
$strx=rand(3,8);
for($i=0;$i $strpos=rand(1,6);
imagestring($im,5,$strx,$strpos,substr($num,$i,1),$black);
$strx+=rand(8,12);
}
imagepng($im);
imagedestroy($im); 
?>

1、無加ダウンロード GD 扩展

2、程序文件有 BOM 头



我说了2点,你只回应了1点
自己都不对自己负责任?

我说了2点、你のみ应了1点
自己都不寶自己負担ですか?

谢谢。 HTML表示用の文書里の画像は問題なく、php の画像処理関数で自分で作成した画像も表示できます。

也在程文件里吗?

あなたの

プログラム ファイルにもありますか?


はい。 http://blog.csdn.net/nicolase/article/details/7020970 という記事を読みました。
どうもありがとうございました。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。