[PHP-users 6773] ラージオブジェクト画像の縮小について。
 
 Oh_java
  
 php-users@php.gr.jp
 
 Tue, 9 Apr 2002 19:18:34 +0900
 
 
 
This is a multi-part message in MIME format.
------=_NextPart_000_000B_01C1DFFB.578F9EE0
Content-Type: text/plain;
	charset="iso-2022-jp"
Content-Transfer-Encoding: 7bit
すみません、お世話になります。
私はoh_javaことオザワともうします。
サーバーOSはTurboLinux、PHPのヴァージョンは4です。
現在PostgreSQLデータベースに画像ファイルをラージオブジェクト型で格納しており
ます。
そのデータをブラウザにてサムネイル表示させてあげたいのです。
しかし、実際のデータを<img>タグのWidth,Heightで小さく指定してあげるだけでは
見た目は縮小されますが通常の画像をOPENしているのと同じで
開くたびに重いままです。
そこで調査の結果imagecopyresized関数を使用すれば
画像が縮小できるようだということまで突き止めました。
早速getimagesize関数でWidth,Heightを求めようとしたのですが、
そこで既につまづいてしまったんです。
getimagesize関数には表示したい画像のURLを指定すればいいということ
だったので、
===================================
$image = "image_show.php3?oid=$oid&type=$type";
$imgsize = getimagesize($image);
===================================
と、PostgreSQLよりoidを指定して画像をブラウザに吐き出す際のURLを指定し、
そのURLを関数にかけてみたのですが、
------------------
Warning: Unable to open image.php3?oid=19329&type=image/gif
in /home/httpd/html/****/thumbnail.php3 on line 8
------------------
というエラーになってしまいます。
実際のimage_show.php3の中身は以下のとおりです。
===================================
<?
 header("Content-type: $type");
/* データベースgalleryに接続 */
$conn = pg_Connect("","","test");
if(!$conn){
 echo"エラーが発生しました:データベースに異常があります \n";
 exit;
}
 pg_exec("begin");
 $fd = pg_loopen($conn, $oid, "r");
 pg_loreadall($fd);
 pg_loclose($fd);
 pg_exec("end");
 pg_close($con);
?>
===================================
ちなみに
$imageをパスとして直接<A>タグや<img>タグで囲って使用した場合には
正常にデータをブラウザ上に表示することができました。
私のプログラムは何処が誤っているのでしょうか。
ご指摘していただけるかたがおりましたら幸いです。
もしくは私が希望するのと同様の処理を実現させているかたが
おられましたら助言を下さい。
よろしくお願いいたします・・・。
@@@@@@@@@@@@@@@@@@
(U・ω・U) Oh_Java (U・ω・U)
ohjava@phoenix-c.or.jp
@@@@@@@@@@@@@@@@@@
------=_NextPart_000_000B_01C1DFFB.578F9EE0
Content-Type: text/html;
	charset="iso-2022-jp"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content=3D"text/html; charset=3Diso-2022-jp" =
http-equiv=3DContent-Type>
<META content=3D"MSHTML 5.00.3314.2100" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT =
size=3D2>=1B$B9ドル$_$^$;$s!"$*@$OC$K$J$j$^9ドル!#=1B(B</FONT></DIV>
<DIV><FONT=20
size=3D2>=1B$B;d$O=1B(Boh_java=1B$B3ドル$H%*%6%o$H$b$&7ドル$^9ドル!#=1B(B<BR>=1B$B=
%5!<%P!<=1B(BOS=1B$B$O=1B(BTurboLinux=1B$B!"=1B(BPHP=1B$B$N%t%!!<%8%g%s$O=
=1B(B4=1B$B$G9ドル!#=1B(B</FONT></DIV>
<DIV> </DIV>
<DIV><FONT=20
size=3D2>=1B$B8=3D:_=1B(BPostgreSQL=1B$B%G!<%?%Y!<%9$K2hA|%U%!%$%k$r%i!<%=
8%*%V%8%'%/%H7?$G3JG<7ドル$F$*$j$^9ドル!#=1B(B<BR>=1B$B$=3D$N%G!<%?$r%V%i%&%6$K=
$F%5%`%M%$%kI=3D<(5ドル$;$F$"2ドル$?$$$N$G9ドル!#=1B(B<BR>=1B$B7ドル$+7ドル!"<B:]$N%G!<%=
?$r=1B(B<img>=1B$B%?%0$N=1B(BWidth,Height=1B$B$G>.5ドル$/;XDj7ドル$F$"2ドル$=
k$@1ドル$G$O=1B(B<BR>=1B$B8+$?L\$O=3DL>.5ドル$l$^9ドル,ドルDL>o$N2hA|$r=1B(BOPEN=1B$B=
7ドル$F$$$k$N$HF18ドル$G=1B(B<BR>=1B$B3+$/$?$S$K=3DE$$$^$^$G9ドル!#=1B(B</FONT></D=
IV>
<DIV> </DIV>
<DIV><FONT=20
size=3D2>=1B$B$=3D3ドル$GD4::$N7k2L=1B(Bimagecopyresized=1B$B4X?t$r;HMQ9ドル$l$=
P=1B(B<BR>=1B$B2hA|,ドル=3DL>.$G$-$k$h$&$@$H$$$&3ドル$H$^$GFM$-;_$a$^7ドル$?!#=1B(=
B<BR>=1B$BAaB.=1B(Bgetimagesize=1B$B4X?t$G=1B(BWidth,Height=1B$B$r5a$a$h$=
&$H7ドル$?$N$G9ドル,ドル!"=1B(B<BR>=1B$B$=3D3ドル$G4{$K$D$^$E$$$F7ドル$^$C$?$s$G9ドル!#=1B(=
B</FONT></DIV>
<DIV> </DIV>
<DIV><FONT=20
size=3D2>getimagesize=1B$B4X?t$K$OI=3D<(7ドル$?$2ドルhA|$N=1B(BURL=1B$B$r;XDj9ドル=
$l$P$$$$$H$$$&3ドル$H=1B(B<BR>=1B$B$@$C$?$N$G!"=1B(B</FONT></DIV>
<DIV> </DIV>
<DIV><FONT =
size=3D2>=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<BR>$image =3D=20
"image_show.php3?oid=3D$oid&type=3D$type";<BR>$imgsize =3D=20
getimagesize($image);<BR>=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D</FONT></DIV>
<DIV> </DIV>
<DIV><FONT=20
size=3D2>=1B$B$H!"=1B(BPostgreSQL=1B$B$h$j=1B(Boid=1B$B$r;XDj7ドル$F2hA|$r%V=
%i%&%6$KEG$-=3DP9ドル:]$N=1B(BURL=1B$B$r;XDj7ドル!"=1B(B<BR>=1B$B$=3D$N=1B(BURL=
=1B$B$r4X?t$K$+1ドル$F$_$?$N$G9ドル,ドル!"=1B(B<BR>------------------<BR>Warning: =
Unable to open image.php3?oid=3D19329&type=3Dimage/gif <BR>in=20
/home/httpd/html/****/thumbnail.php3 on line=20
8<BR>------------------<BR>=1B$B$H$$$&%(%i!<$K$J$C$F7ドル$^$$$^9ドル!#=1B(B</FO=
NT></DIV>
<DIV> </DIV>
<DIV><FONT=20
size=3D2>=1B$B<B:]$N=1B(Bimage_show.php3=1B$B$NCf?H$O0J2<$N$H$*$j$G9ドル!#=1B=
(B<BR>=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<BR><?<BR> =20
header("Content-type: $type");<BR>  <BR>/*  =
=1B$B%G!<%?%Y!<%9=1B(Bgallery=1B$B$K@\B3=1B(B =20
*/<BR>$conn =3D=20
pg_Connect("","","test");<BR>if(!$conn){<BR> echo"=1B$B%(%i!<,ドルH/@8$=
7$^7ドル$?=1B(B:=1B$B%G!<%?%Y!<%9$K0[>o,ドル$"$j$^9ドル=1B(B=20
\n";<BR> exit;<BR>}<BR>  pg_exec("begin");<BR>  $fd =3D=20
pg_loopen($conn, $oid, "r");<BR>  pg_loreadall($fd);<BR> =20
pg_loclose($fd);<BR>  pg_exec("end");<BR> =20
pg_close($con);<BR>?><BR>=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<BR>=1B$B$A$J=
$_$K=1B(B<BR>$image=1B$B$r%Q%9$H7ドル$FD>@\=1B(B<A>=1B$B%?%0$d=1B(B<=
;img>=1B$B%?%0$G0O$C$F;HMQ7ドル$?>l9g$K$O=1B(B<BR>=1B$B@5>o$K%G!<%?$r%V%i=
%&%6>e$KI=3D<(9ドル$k3ドル$H,ドル$G$-$^7ドル$?!#=1B(B</FONT></DIV>
<DIV> </DIV>
<DIV><FONT=20
size=3D2>=1B$B;d$N%W%m%0%i%`$O2?=3Dh,8ドルm$C$F$$$k$N$G7ドル$g$&$+!#=1B(B<BR>=1B=
$B4ドル;XE&7ドル$F$$$?$@1ドル$k$+$?,ドル$*$j$^7ドル$?$i9,$$$G9ドル!#=1B(B<BR>=1B$B$b7ドル$/$O;=
d,4ドルuK>9ドル$k$N$HF1MM$N=3DhM}$r<B8=3D5ドル$;$F$$$k$+$?,ドル=1B(B<BR>=1B$B$*$i$l$^=
7ドル$?$i=3Du8@$r2<5ドル$$!#=1B(B<BR>=1B$B$h$m7ドル$/$*4j$$$$$?7ドル$^9ドル!&!&!&!#=1B(B=
</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=3D2>
<DIV><FONT =
size=3D2>=1B$B!w!w!w!w!w!w!w!w!w!w!w!w!w!w!w!w!w!w=1B(B<BR>(U=1B$B!&&X!&=1B=
(BU)=1B$B!!=1B(BOh_Java=1B$B!!=1B(B(U=1B$B!&&X!&=1B(BU)<BR><A=20
href=3D"mailto:ohjava@phoenix-c.or.jp">ohjava@phoenix-c.or.jp</A><BR>=1B$=
B!w!w!w!w!w!w!w!w!w!w!w!w!w!w!w!w!w!w=1B(B</FONT></DIV></FONT></DIV></BOD=
Y></HTML>
------=_NextPart_000_000B_01C1DFFB.578F9EE0--