ホームページ  >  に質問  >  本文

GD2 機能を使用して 4 桁の確認コードを生成すると、画像が表示されないのはなぜですか?


#<?php

session_start();
header("content-type:image/png"); / /Set画像の作成形式
$ Image_width = 70; // 画像の幅を設定
$ Image_height = 18; // 画像の高さを設定
srand (microtime()*100000); // ランダムな乱数を設定数値シード
for ($ i = 0; $ i & lt; 4; $ i) {// 4 ビットの乱数を出力するサイクル
$ New_number. = Dechex (RAND (0,15));
}
$_SESSION[check_checks]=$new_number; //取得した乱数検証コードをSESSION変数に書き込む

$num_image=imagecreate($image_width,$image_height); //作成a Canvas
imagecolorallocate($num_image,255,255,255); //キャンバスの色を設定します
for($i=0;$i $ font = mt_rand (3,5); // ランダムなフォントを設定します
$ x = mt_rand (1,8) $ image_width*$ I/4; // ランダムなフォントを設定します位置の X 座標
$y=mt_rand(1,$image_height/4); //ランダムな文字の位置の Y 座標を設定します
$color=imagecolorallocate($num_image,mt_rand(0,100 ),mt_rand(0,150) ,mt_rand(0,200)); //文字の色を設定
imagestring($num_image,$font,$x,$y,$_SESSION[check_checks][$i],$color) ; //文字を水平に出力
}
imagepng($num_image); ' ‐ ' s ' s ‐ ‐ ‐ ‐ ‐ ‐ PNG 形式を使用するには、PNG 形式を使用します--

S.LS.L2587日前1227

全員に返信(1)返信します

  • 风豆丁

    风豆丁2017-08-22 17:08:36

    コードに多くのエラーがあります。

    まず header("content-type:image/png"); をコメントアウトして、最初にエラーに対処します。

    通常、ヘッダーは画像を生成するimagepng()関数の上に設定され、エラーを簡単に調整できます。

    返事
    0
  • S.L

    このコードはチュートリアルからコピーされたものなので、正しいはずです。あなたの方法に従っては機能せず、次のエラーが発生します。 ( ! ) 注意: 未定義の変数: D:wamp64wwwlianxichecks.php の 7 行目の new_number コールスタック # タイムメモリ機能の場所 1 0.0007 244832 {メイン}( ) ...checks.php:0

    S.L · 2017-08-22 23:22:07
    风豆丁

    for ループの前に $num_number に初期値を指定します。$_SESSION 添字は文字列である必要があります。以下に変更するだけです。 セッション開始(); header("content-type:image/png"); //作成する画像の形式を設定します。 $image_width=70; //画像の幅を設定します。 $image_height=18; //画像の高さを設定します srand(microtime()*100000); //乱数シードを設定します $new_number = ''; for($i=0;$i<4;$i++){ //ループして 4 桁の乱数を出力します $new_number .= dechex(rand(0,15)); } $_SESSION['check_checks']=$new_number; //取得した乱数検証コードをSESSION変数に書き込む $num_image=imagecreate($image_width,$image_height); //キャンバスを作成します imagecolorallocate($num_image,255,255,255); //キャンバスの色を設定します。 for($i=0;$i

    风豆丁 · 2017-08-23 22:23:48
  • キャンセル返事