私は、ユーザーがサーバー内のフォルダに画像をアップロードするためのフォームを作成しました。イメージをデータベースに挿入するにはどうすればよいですか? blogという名前のデータベースにuploadというテーブル名を作成し、Imageという名前の行にMediumBLOBという値を作成しました。データベースに画像を挿入する
上記が不合理な場合は、サーバーから画像を動的に呼び出すにはどうすればよいですか?
ありがとうございます。
私は、ユーザーがサーバー内のフォルダに画像をアップロードするためのフォームを作成しました。イメージをデータベースに挿入するにはどうすればよいですか? blogという名前のデータベースにuploadというテーブル名を作成し、Imageという名前の行にMediumBLOBという値を作成しました。データベースに画像を挿入する
上記が不合理な場合は、サーバーから画像を動的に呼び出すにはどうすればよいですか?
ありがとうございます。
this howtoを参照してください。ただし、クエリ引数をインラインで渡す代わりに、パラメータ化されたクエリを使用することを検討する必要があります。
すばらしいリンク。しかし、今私は少し混乱しています。 DBに完全なイメージを格納するか、それにIDを割り当ててIDで呼び出す必要がありますか?ありがとう – brad
ほとんどのDBAは、イメージをフェッチする必要があるたびにデータベースサーバーに不必要な課金を課すため、イメージのような大きなBLOBデータをデータベースに格納することをお勧めします。これには2つの方法があります:ファイルをWebルート内のディレクトリに保存して、Webサーバーがそのファイルをそのままホストするか、または別の場所に格納してスクリプトを使用して提供することができます(例えば 'image.php?id = xxx')。いずれにしても、実際のファイル名をDB内のイメージのIDに変更するか、データベースエントリをファイルシステムのエントリにマップする別の方法を思いついてください。 – cdhowie
@brad:その稀少なyoullは、実際には画像自体をdbに保存したいと思っています。 jsutはファイルシステムにパスを格納します。表示すると、ファイルシステムのパスがパブリックパスに変換されます。 – prodigitalson
イメージをファイルシステムに残さず、パスまたはIDをDBに保存しない理由はありますか? – Matthew
@konforceいいえ、具体的な理由はありません。あなたはどのように私はDBにIDを格納することができますし、IDで後で画像を呼び出すことを説明することはできますか?ありがとう。 imgタグにIDを定義していますか?ありがとう。 – brad
(小文字のb)、通常はgetimg.php?id = 234234スクリプトを実行してから、そのPHPスクリプトが画像にリダイレクトされるか、ファイルの内容をそのまま返すか、またはトリミング/サイズ変更を処理します必要な(そしてキャッシュする)。何があっても、データベース内のイメージIDを検索し、サーバー上の実際のファイルへのパスを見つけます。 – Brad