2012-02-10 16 views
0

出力する画像を作成しています。最終的にimagegif()と呼ぶと、通常の「イメージにはエラーが含まれているため、sdfsdsdfを表示できません」というメッセージが表示されます。しかし、この画像を2番目のパラメータで保存すると、有効なGIF画像になります。 imagegif()がtrueを返します。 今何ですか?あなたは一つのパラメータでimagegif()を使用した場合の画像が他の画像をファイルに保存され、ブラウザに表示されbecouseimagegif()strange fail

+0

私たちにいくつかのコードを見せてください。 – rekire

答えて

1

しかし、この画像を2番目のパラメータで保存すると、 有効なGIF画像になります。 imagegif()はtrueを返します。それで?

スクリプトの出力を確認します。ブラウザの出力を確認します。通常は、エラー/警告/通知メッセージ、そのスクリプトからのテキスト出力、またはそれに含まれる別のテキスト、空白/改行、または<?phpタグの前にある(スクリプトファイルのUTFエンコーディングの場合はBOMレコードのような)

解決策は簡単です - header('Content-Type: image/gif');をコメントし、スクリプトを直接呼び出す(スクリプトによって生成された画像を含むページではありません)。画像ファイル自体のバイナリコンテンツの「ガベージ」の前に何かがあるかどうかを確認します。

エラー報告/表示がオフになっている場合は、スクリプトの先頭にerror_reporting(E_ALL); ini_set('display_errors', 1);を追加する必要があります。

1

はその後

header('Content-Type: image/gif'); 

使用する必要があります。

+0

うん、すでにそこに! –