質問: データベースについて質問です。 現在テーブルのひとつの項目(LONGTEXT形式)にhtmlファイルを保存しています。 データ量がひとつあたり10KBと結構あり、文自体が結構長いです。 登録は出来たのですがこれをいざエクスポートしようとするとエクスポートの画面にhtmlの画面が出てきて、落としたエクセルにはアラビア語のようなバグが発生してしまいます。 またこの状態でデータベースの編集画面で編集ボタンを押すと空白ページへ切り替わって画面が見れなくなります。 データのアクセスが出来ない状況です。 PHP上でデータベースのパラメータを変えるとデータベースに入っているhtmlのデータの内容も同時に変わるという事をしたく、文章が長くてもそういった場所を整えてセルの中に文章を保存したいとは考えています。 一応登録する前は’や”の前に¥を全て置いてエスケープは施しました。 echo で出力してみたのですが、登録したデータに全く問題はなく、綺麗にHTMLが出力されます。 こういった長い文章のデータをデータベースで大量に保存していくのは危険でしょうか? 対処方法など分かる方おりましたらよろしくお願いします。
回答: プログラムによるSQLの実行においてプレースホルダを使わないで自前エスケープすることほど愚かなことは無いと思う。 プレースホルダでググると幸せになれると思います。