• 締切済み

PHP イメージ関数が正常に機能しない理由が分かりません。

レンタルサーバー上に下記のようなPHPファイルをアップし、イメージ関数の使い勝手を簡単に試そうとしたのですが、 「画像ファイル"http;//example.com/test.php"は壊れているため、表示できませんでした。」 と表示されてしまい、上手くいきません。 コード: <?php $image = ImageCreate(250,70); ImageColorAllocate($image,0,0,0); header("Content-type: image/png"); ImagePNG($image); ?> headerの位置は、最初は先頭に置いていましたが、上手くいかないので、上記のように今のところしています。(深い意味はありません。) ネット上で色々調べたのですが、なかなかドンピシャな回答がなくて困っています。 作業環境は、winXp、dreamweaverCS3、 レンタルサーバは、xrea.com(仕様/ OS:Linux Apach:1.3.37 PHP:4.4.8) です。 ファイルの保存形式(文字コードなど?)に問題があるのでしょうか。 どなたか、アドバイスをお願いします。

みんなの回答

  • tom951
  • ベストアンサー率30% (29/96)
回答No.2

>作業環境は、winXp、dreamweaverCS3、 >レンタルサーバは、xrea.com(仕様/ OS:Linux Apach:1.3.37 PHP:4.4.8) もしかしてローカルでテストもしないでレンタルサーバにいきなりアップしている? 質問者みたいな素人がいきなりサーバで動作チェック? サーバダウンさせるとかのリスクをまったく考えてない?

march4
質問者

お礼

ありがとうございました(^^) また何かありましたら、教えて下さいね。

すると、全ての回答が全文表示されます。
回答No.1

Image関数が使えない環境なのでは? gd_info()で調べる事が出来ます http://jp2.php.net/manual/ja/function.gd-info.php <pre> <?php var_dump(gd_info()); ?> </pre> たしかxreaはGD未対応だったような気が…

march4
質問者

お礼

あれこれイジッているうちに問題は解決しましたのでご報告します。 原因が何であったのかはよく分かりませんが、 「header("Content-type: image/png");」を、「<?php」の直後に持ってきたことで、解決されたように思います。 この度は、ご助言をありがとうございました。 おかげで助かりました。

march4
質問者

補足

アドバイスありがとうございます。 既にphpinfo()により、GDについて確認しており、問題なさそうだったことを説明するのを忘れておりました。 しかし、この情報を誤って理解しているかもしれませんので、tenderfeelさんのアドバイスの方法で確認してみました。その結果は下記の通りです。 array(11) { ["GD Version"]=> string(27) "bundled (2.0.28 compatible)" ["FreeType Support"]=> bool(true) ["FreeType Linkage"]=> string(13) "with freetype" ["T1Lib Support"]=> bool(false) ["GIF Read Support"]=> bool(true) ["GIF Create Support"]=> bool(true) ["JPG Support"]=> bool(true) ["PNG Support"]=> bool(true) ["WBMP Support"]=> bool(true) ["XBM Support"]=> bool(true) ["JIS-mapped Japanese Font Support"]=> bool(false) } これはつまり、GDを利用できる、ということですよね? またよろしければ、アドバイスをお願いいたします。

すると、全ての回答が全文表示されます。

関連するQ&A