- ベストアンサー
フォームでのファイル参照について
htmlのフォームでファイル参照して、 ファイルを送信するのではなく、ファイル名だけを送信したいのですが、どうしたらよいでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
送信先のPHPで $_FILES[filename][name]; で参照したファイルの名称は取得出来ます 処理の流れや目的はわかりませんが…とりあえず。 アップロードされていないファイルの展開は出来ません(当然ですが) すでにアップロードされているファイル名の指定が目的なら アップ済みのファイル名を取得・表示・選択の方が宜しいかと思いました
その他の回答 (2)
- okmotokun
- ベストアンサー率59% (92/155)
FORMタグの enctype をデフォルトの application/x-www-form-urlencode にすればファイルの中身は送信されません。 ところで、PHP(ネットに繋がっているブラウザ)からローカルのファイルを開くことはセキュリティがらみでできません。 IEならば参照ボタンで選択したファイルを開くことはできますが、何らかの処理を加えることは無理です。
お礼
ありがとうございました。
- yyr446
- ベストアンサー率65% (870/1330)
送信フォーム内の <input type="file" name="select_filename" id="select_filename" /> で選ばせるファイル名は、セキュリティ保護のため、JAVASCRIPTでは セットできません。 取得するのは、上記のタグだと send_file_name = document.getElementById("select_filename").value; で取れますね。 別の送信フォームを作って <form name="sendform" action="http://hogehoge.cgi" > <input type="hidden" name="filename" id="filename" /> </form> document.getElementById("filename").value = send_file_name; form.sendform.submit(); ですかね
補足
回答ありがとうございます。 すみません、かなり説明不足でした。 フォームで参照したファイルパスを送信して、 送り先のphpファイルでそのファイルを開いて処理する、というプログラムが作りたいのです。
お礼
ありがとうございました。 非常に助かりました。