スクウェア・エニックスノベルス『スタンプ・デッド』1~5巻&コミック版(完結)、
『太陽で台風』1・2巻(完結)発売中!
ガンガンノベルズ『魔法少女アーヤ☆アミー』発売中!
徳間デュアル文庫『魔王さんちの勇者さま』1~4巻(完結)発売中!
徳間文庫『欠陥妖怪住宅』発売中!
ぽにきゃんBOOKSライトノベルシリーズ『ブチ切れ勇者の世界征服』1~2巻発売中!
徳間文庫『パラレル家族計画』発売中!

2017年4月、第11回HJ文庫大賞にて『銀賞』をいただきました!
2017年5月、ジャンプ小説新人賞’16 Winterにて 小説フリー部門『銀賞』受賞をいただきました!
2017年9月、第30回ファンタジア大賞にて 『金賞』をいただきました!

2017年9月30日(土)、『カンスト勇者の超魔教導 ~将来有望な魔王と姫を弟子にしてみた~』HJ文庫より発売!
第11回HJ文庫大賞『銀賞』受賞作です!

2017-10

«  | ホーム |  »

PHPにて、フォームから受け取った画像を確認画面で表示する

どうも、はむばねです。
先日、PHPでアップロードされた画像を一時保存せずに確認画面で表示する方法はねーのかよファッキン!
表示部分を別ファイルに分けてimgのsrcで指定すればできるけど、なんか力技感が漂うじゃねーかクソッタレー!
という記事を書いたらですね。
Data URI schemeを使えば出来るんじゃねーのかボケナスが! という旨のコメントをいただきまして。
早速、以下みたいなで試してみました。


//アップロードされた画像を取得
$img = file_get_contents($_FILES["img"]["tmp_name"]);
// BASE64エンコード
$base64 = base64_encode($img);
//表示
print "〈img src=\"data:image/jpeg;base64,${base64}\"〉";



したら、無事表示成功!
実際の、確認画面の後にファイルをアップロードする処理まで入れると↓こんな感じになりました。



【確認画面での処理】
//アップロードされた画像を取得
$img = file_get_contents($_FILES["img"]["tmp_name"]);
//セッションにも格納
$_SESSION['img'] = $img ;
// BASE64エンコード
$base64 = base64_encode($img);
//確認表示
print "〈img src=\"data:image/jpeg;base64,${base64}\"〉";


【サーバに保存する際の処理】
if (isset($_SESSION['img'])) {
  //セッションのデータをファイルとして書き出し
  file_put_contents("imgPath/img.jpg", $_SESSION['profileImg'], LOCK_EX));
  //セッションからは削除
  unset($_SESSION['profileImg']);
}




セッションに保存されるのは(ファイルパスではなく)実データなので、move_uploaded_fileやrenameだと保存出来ない点は一応注意ですかね。
まぁ、私が最初気付かずそれでやって(・3・)アルェー? ってなっただけなんですけど。

うむ、なかなかにシンプルで綺麗なコードなのではなかろうか。
……と思うのですが、調べた時にこの情報が出てこなかったのはなぜなのか。
なんか問題あるのかなぁ……?
Data URI schemeだとデータ量はでかくなるけど、それも1.3倍程度らしいし。
単に私の検索方法が悪かったのか……?


とまれ、ほしるちさん、情報いただき本当にありがとうございました!
おかげで、(とりあえず該当の環境では)モヤモヤしない形で実装することができました!
大変助かりました、感謝です!
スポンサーサイト

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

http://hamubane.blog.fc2.com/tb.php/4141-fbda1418
この記事にトラックバックする(FC2ブログユーザー)

«  | ホーム |  »

プロフィール

hamubane

Author:hamubane

たぶんライトノベル作家的なもの


Twitter

既刊情報

ほぼ全部絶版だけどな!

カンスト勇者の超魔教導 ~将来有望な魔王と姫を弟子にしてみた~ (HJ文庫)

最新コメント

最新記事

カレンダー

09 | 2017/10 | 11
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -

月別アーカイブ

カテゴリ

未分類 (0)
ブログ (4379)
スタンプ・デッド (73)
情報系 (23)
短ネタ (35)
太陽で台風 (2)
しゅーかつ (18)
レパートリー確認PJ (27)
自著を無理矢理褒める (7)
感想 (306)
天神周辺グルメ (47)

検索フォーム

RSSリンクの表示

リンク

このブログをリンクに追加する

ブロとも申請フォーム

この人とブロともになる

QRコード

QR