みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

inputタグ type=

「入力.html」でfileを選択し、テキストボックスに文字を入力し
サブミットボタンをクリックすると
「表示.jsp」にファイル名とテキストボックスに入力した文字
を表示させたいのですがテキストボックスに入力した文字
が表示されません(nullと表示される)。
どうすればテキストボックスに入力した文字を
表示させられるでしょうか。
ご回答よろしくお願いします。

==表示.jsp==
<%@ page contentType="text/html; charset=Shift_JIS"
pageEncoding="Shift_JIS"%>
<% request.setCharacterEncoding("Shift_JIS"); %>
<%@ page import="java.util.*"%>
<%@ page import="java.text.*"%>
<%@ page import="java.util.regex.*"%>
<%@ page import="javax.servlet.*"%>
<%@ page import="java.io.*"%>
<%
byte buffer[] = new byte[4096];
ServletInputStream in = request.getInputStream();
/* boundaryの読み込み */
int size = in.readLine(buffer, 0, buffer.length);
// 末尾の改行(CR+LF)を除いて文字列に変換
String boundary = new String(buffer, 0, size - 2);

/* Content-Dispositionヘッダ読み込み */
size = in.readLine(buffer, 0, buffer.length);
String header = new String(buffer, 0, size - 1);

Pattern pattern = Pattern.compile(".*filename=[ \"]*(.*)[ \"][\\W]*");
Matcher matcher = pattern.matcher(header);
matcher.matches();
String fileName = matcher.group(1);
File file = new File(fileName);
fileName = file.getName();

%>
<html>
<head>
</head>
<body bgcolor="#99aaff">
<br>
<%=fileName%><br>
<%=request.getParameter("fileComment")%>
</body>
</html>

=入力.html=
(文字制限のため一部)
type="file" name="fileName"
type="text" name="fileComment"

投稿日時 - 2006-12-10 20:50:44

QNo.2592706

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

<form>タグのenctype属性に
enctype="multipart/form-data"
と「multipart/form-data」を指定していると思いますが、
この「multipart/form-data」を指定した場合は
request.getParameter()からはHTTPリクエストの値を取得できません。
ファイル名を取得するのと同じようにマルチパートから取得して下さい。
ファイルの情報のあとに、input type="text"で入力された文字列があります。

投稿日時 - 2006-12-11 11:29:30

補足

Content-Disposition: form-data; name="fileComment"
の部分はファイルの内容が記述されているところの
後にあることがわかりました。

その行をどのように取得したらよいかわかりません。

投稿日時 - 2006-12-17 09:30:42

お礼

pcbeginnerさん、ご回答ありがとうございました。

-----
Content-Disposition: form-data; name="fileComment"

"コメント"
-----

↑のような部分を取得したいのですがわかりません。
リクエストデータをすべて見る方法を教えていただけないでしょうか。
よろしくお願いします。

投稿日時 - 2006-12-16 18:38:10

あなたにオススメの質問