0

でホストされている Web サイトにキャプチャ画像を表示しようとしています000webhostが、次のエラーが表示されます。

imagettftext() [function.imagettftext]: 20 行目の /home/a3594760/public_html/captcha1.php でフォントが見つからない/開くことができませんでした

同じフォルダーに MAGENTOB.TTF ファイルがあります。私のコードは私のローカルホストで動作しているのと同じコードですが、ホストされているとエラーが表示され000webhostます:

<?php
  include_once('includes/session.php');
  $_SESSION['secure']=rand(1000,9999);
  header('content-type:image/jpeg');
  $text=$_SESSION['secure'];

  $font_size=25;
  $image_width=200;
  $image_height=40;

  $image=imagecreate($image_width,$image_height);
  imagecolorallocate($image,255,255,255);
  $text_color=imagecolorallocate($image,0,0,0);
  for($x=1;$x<=40;$x++)
  {
    $x1=rand(1,120);
    $x2=rand(1,120);
    $y1=rand(1,120);
    $y2=rand(1,120);
    imageline($image,$x1,$y1,$x2,$y2,$text_color);
  }
  imagettftext($image,$font_size,0,15,30,$text_color ,'MAGNETOB.TTF',$text);
  imagejpeg($image);

?>

どうしたの?

4

1 に答える 1

0

あなたのローカルホストの設定は何ですか? そして、セットアップは000webhost何ですか?

私の最初の推測では、大文字と小文字の区別の問題がある可能性があります。ファイル名がファイル内にある可能性がありMAGNETOB.TTFますが、何らかの形magnetob.ttfでファイルシステム上にあります。

もう 1 つの問題は、ファイルパスを完全に指定する必要があることです。したがって、次のようなものです。

/path/to/my/font/on/web/MAGNETOB.TTF

最終的なアイデアは、ファイルのアクセス許可に関連しています。Web サーバーはファイルを読み取ることができますか?

于 2013-03-14T02:04:38.810 に答える