ここから本文です

画像データ名を取得して表示させたいのですが、上手くいきません。どのようにした...

kom********さん

2017/12/2501:00:04

画像データ名を取得して表示させたいのですが、上手くいきません。どのようにしたら表示するでしょうか。よろしくお願いします。

<?php

// ファイル名を $_POST['fname'] で受け取る
$filename = (string)filter_input(INPUT_POST, 'fname');

$dirname = __DIR__ . '/file_picture_gps';

// パスを定める
$path = "$dirname/$filename";

// 結果を出力する
$html .= '<h3>画像ファイル</h3>' ;
$html .= '<p><img class="_img" src="' . $path . '" alt="画像ファイル"></p>' ;

閲覧数:
80
回答数:
1

違反報告

ベストアンサーに選ばれた回答

sur********さん

2017/12/2608:30:59

ちょっとやってみましたが、__DIR__ を使ってフルパスにする必要があえてないなら、

$filename = (string)filter_input(INPUT_POST, 'fname');
$dirname = './file_picture_gps';
$path = $dirname.'/'.$filename;
$html = '';
$html .= '<h3>画像ファイル</h3>' ;
$html .= '<p><img class="_img" src="' . $path . '" alt="画像ファイル"></p>' ;
print $html;

これでされると良いです。一番大きな間違いは、 "$dirname/$filename"; この部分。変数はクォーテーションで囲ってはいけないのでここが✕だったのと、
マックはよくわからないのですが、windowsだと、__DIR__を使ってフルパス記述にすると、ブラウザでソースを見ると画像フォルダ前までの階層の仕切りが / ではなく \ になっている為、それ以降のも\に揃えないといけないのでちょっとややこしいです。
なので、簡単に相対パスでの記述でよろしいのではないかと思いますが。

ちなみに、今回のように画像なんかがうまく表示されない時はまず自分で、ブラウザ上でソースコード内のパスを確認してみることをオススメします。

この回答は投票によってベストアンサーに選ばれました!

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる