ホームページ  >  記事  >  バックエンド開発  >  PHP5 は、mssql2005 データベース テーブルのイメージ フィールド画像表示に接続します。

PHP5 は、mssql2005 データベース テーブルのイメージ フィールド画像表示に接続します。

WBOY
WBOYオリジナル
2016-06-23 13:29:401688ブラウズ

言語はphp5です
データベースはmssql2005です

テーブルのフィールド[nr]には画像が格納され、型は画像型です

今実装したいのは
1) フィールドnrの内容が画像であるかどうかを判断します、 HTML ページ、または PDF ファイル

2) 型判定は他のフィールドには保存されません。

それが実現したらどうなるか。例えば、nrフィールドに格納されている内容がjpgの場合、どうやって表示するのでしょうか?


ディスカッションへの返信(解決策)

2番目の質問は、そのフィールド型が他の型には存在しないことを説明するものです
したがって、nrフィールドに基づいてそれがどの型であるかを判断する必要があります

<?php$file=$row['nr'];//读取nr字段,这个应该会吧$info = pathinfo($file);//可以百度一下pathinfo函数$type=$info['extension'];//获取类型if ($type=="jpg"){//如果是图片echo "<img scr='".$file."'>";//显示图片}?>

試してみましたが、うまくいきませんでした。エンコードの問題が原因でしょうか?修正後の gb2312 も見ていきます

注: ここの nr フィールドはイメージ タイプであり、バイナリのものを格納します。 " 写真を表示する方法はこれですか?

[nr] image NULL 、

pathinfo(path,options)
path 必須。チェックするパスを指定します。

path はファイルのパスですが、ここで保存するのはファイルのパスではなく、ファイルのバイナリです。

http://blog.chinaunix.net/uid-12877464-id-2911978.html

聞いてもいいですか、この nr のバイナリ内容に基づいて、どのタイプであるかをどのように知ることができますか?
このフィールドには html、htm、pdf、jpg の 4 種類を保存できます。では、このフィールドに基づいてどのタイプであるかを判断するにはどうすればよいでしょうか?

$nr=$arr["nr"];

$strInfo = unpack("C2chars ") , $bin);
$inttype=$strInfo["chars1"];

この $inttype で型を決定できます。基本的にはできるようになりましたが、問題があると画像が読み取れるだけで読み込めなくなります。これは何が原因でしょうか?

こんにちは、その後どうやって解決しましたか?

これで基本的には実装できましたが、画像の一部しか読み取れず、問題が発生しました。これは何が原因でしょうか?

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。