
Linux、PHP4.3.11、MySQLの環境でPHPスクリプトの作成を試行しています。
MySQLの BLOB型 に格納された画像バイナリを呼び出してそのまま出力するスクリプトを作成し、同スクリプトから出力された画像ファイルのサイズや種別情報を「getimagesize()」で取得しようとしているのですがうまく行きません。
画像出力の処理は、MySQLからバイナリのデータを読み出して HTTP HEADER をつけてそのまま出力する処理を行っています。
// 画像出力処理
<?php
$image = /* DBからバイナリを取得する処理 */
header("Content-type: image/jpeg\n\n");
echo $image;
exit();
?>
上のスクリプトをWEBブラウザで呼び出すと画像を表示する事ができます。
また、<img src="画像出力スクリプトのURL">としてHTML中に記述しても画像を表示できます。
しかし、getimagesize() で画像情報を取得しようとしても False となり、画像の構成情報を取得できません。
// 画像情報取得処理
<?php
$src = "http://画像出力スクリプトのURL";
var_dump(getimagesize($src));
exit();
?>
$src にローカルにある実ファイル画像を指定した場合( "./hoge.jpeg" )や
他のWEBサーバ上にある画像ファイルを指定した場合( "http://よそのサーバURL/hoge.jpeg" )等は画像情報をちゃんと取得できます。
画像出力用のスクリプトで行わなければならない処理が何か不足しているのでしょうか。
原因となりそうな物が分かる方がいらっしゃいましたらご教示お願いいたします。
No.3ベストアンサー
- 回答日時:
#1 の方が仰る様に getimagesize は、ファイルを読み込んで情報を出力する関数ですから、バイナリのデータでは無理なのではないかと。
私が前にやった方法だと、ファイルをDBにBLOBに入れる際に、その画像ファイルの属性を別テーブルに入れていました。
そんなときファイルをDBに入れる際に、getimagesize を使うと便利だろうなと言う感じはします。
こっちの方が明瞭ですし、扱いやすかったです。
No.2
- 回答日時:
データベースの代わりに以下でやってみましたがちゃんと取得できるようです。
image.php
<?php
$image = file_get_contents("test.jpg");
header("Content-Type: image/jpeg");
echo $image;
?>
<?php
$src = "http://localhost/php/image.php";
var_dump(getimagesize($src));
exit();
?>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLiteに画像を格納したい
-
実行ファイル(exe)に画像ファ...
-
C# Excelファイルへの画像挿入。
-
phpのheader("Location:#pos")...
-
.htaccessにphp_valueが使用できな
-
*.php、*.php3、*.phtmlの違い
-
mysql→EUC-JP、php→UTF-8の時の...
-
phpでメール送信できません 原...
-
phpのextension_dirを複数指定...
-
phpの中でphpを書けないか
-
PHP PDOライブラリが読み込まれ...
-
mamp環境でのcronの使い方で困...
-
PHPでメールを受信するには?
-
再度、xamppにおけるjpgraphの...
-
セッションについての設定なの...
-
2つの画像ファイルが異なるファ...
-
require_once()でファイルが読...
-
PHP版のPDFlibのインストール
-
PHPのif文でその処理を途中で抜...
-
header(Location:~)で$_SESS...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBSの「MsgBox」について
-
SQLiteに画像を格納したい
-
拡張子php画像をjpg画像等に変...
-
Illustratorで文字と画像を流し...
-
手作業で埋め込んだ、UserForm1...
-
PythonのTkinter詳しい方へ。画...
-
VBAでJPGサイズ変更
-
pictureboxに表示した画像のフ...
-
「imagejpeg」(GD)で作成した...
-
VBAのコードを教えてください
-
C#とJavaで、MP3タグの画像を表...
-
透過PNGが透過されない!!
-
phpMyAdminに画像を保存できない
-
PHP getimagesize();
-
wordpressサイトにて、画像ウィ...
-
libpngでpng操作がうまくいかない
-
Wordpressの条件で複数画像を表...
-
'member_picture/'に/がありま...
-
php,mysqlにて画像パス保存/表...
-
DBからPHP出力された画像の情報...
おすすめ情報