[WordPress]Ajaxで画像を送受信

Ajaxで画像を送受信する方法。

なかなかに手こずったのでメモ。

まずは、page.phpなどにいれておくHTML。

つぎに、function.phpなどに以下を。

JSをmyscript.jpというファイル名でfunction.phpと同じフォルダに作成

まず、ファイルを選んで、保存ボタンをクリックします。

すると、ちゃんとアップロードできたら、OKが表示されます。ファイル名を入れて読み込みボタンを押すと、保存した画像を読み込んで表示できることがわかります。

こんなかんじで。

 

アップロードしたファイルを安全に保存する

HTMLでアクセスできないように保存するために、今回はドキュメントルートの親ディレクトリに保存するようにしました。でも、パーミッションをきちんと設定すれば問題ないように思います。ただ、ドキュメントルートの親ディレクトリだとFTPでファイルを確認することができるので、その点で便利です。

ほかにも、データベースに直接保存する方法もあります。その場合blob型を使うとうまくいきました。でも、レンタルサーバーだと、データベースに保存できる容量が小さいので難しいです。例えば、エックスサーバーでは1GBしか保存できないので。VPSや専用サーバが使えるなら、データベースへの保存も視野にいれていいのかなと思います。データベースに画像を入れると負荷が大きくなるので、よろしくないという意見と、そんなこともないという意見があるようですが、そのあたりは使い方にもよるんでしょうね。

0
  • このエントリーをはてなブックマークに追加