初めて投稿させていただきます。
今、WindowsNT4.0+SP6,IIS+ASPでファイルのアップロードを考えています。
調査している中で、basp21を使用してファイルをアップロードするところまでわかったのですが、その後すこしつまずいています。

basp21を使用してファイルを送信する場合、HTML上に<input type="file" name="strName">というタグを明記し、ファイルを送信する場合には、このタグに該当するファイルの絶対パスを明記するとは思うのですが、これを固定のファイル名にしたいのです。

試したこととして<input type="file" name="strName" value="c:\test.text">という形で明記しましたが、表示されませんでした。
ブラウザーはIE6.0およびNetscape 6.1を使用しております。

よろしくお願いします。

A 回答 (1件)

こんにちは。

itohhといいます。

type="file"では、セキュリティ上、valueは設定できないことになっていたと思います。
JavaScriptでもダメだと思いますよ。
    • good
    • 0
この回答へのお礼

ありがとうございます。
設定できるように書いてあった本もあったのですが。。
実際、開発してみてできないので、どうしてかなと思っていました。
これで確信がもてました。

お礼日時:2002/04/02 00:32

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q半角カナだけが入力できるは可能?

半角カナだけ入力できるテキストボックスは
作成可能でしょうか?

Vbscript だけを使って実現したいと思います。

Aベストアンサー

ちょっと面倒なやり方ですが、以下の様なものはいかがでしょう?
テキストボックスのonblurイベント時にVBScriptでチェックしています。

----サンプル-----
<html>
<head>
<title>半角カナチェック</title>
<script language="vbscript">
Function KanaCheck(strTarget)
Dim obj, i, strChar, intAscBuff
For Each obj in frm1
If InStr(obj.name, strTarget) > 0 then
For i = 1 To Len(obj.value)
strChar = Mid(obj.value, i, 1)
intAscBuff = Asc(strChar)
If intAscBuff < Asc("ア") Or intAscBuff > Asc("ン") Then
If Not (intAscBuff = Asc("゛") Or _
intAscBuff = Asc("゜") Or _
intAscBuff = Asc(" ") Or _
intAscBuff = Asc("(") Or _
intAscBuff = Asc(")") Or _
intAscBuff = Asc("-") Or _
intAscBuff = Asc(",") Or _
intAscBuff = Asc(".") Or _
intAscBuff = Asc("\") Or _
intAscBuff = Asc("/") Or _
intAscBuff = Asc("「") Or _
intAscBuff = Asc("」")) Then
If intAscBuff < Asc("A") Or _
intAscBuff > Asc("Z") Or _
intAscBuff < Asc("0") Or _
intAscBuff > Asc("9") Then
KanaCheck = False
msgbox obj.name & "は半角カナ文字のみの入力となります。"
Exit Function
End If
End If
End If
Next
End If
Next
KanaCheck = True
End Function
</script>
</head>
<body>
<form name="frm1" method="post">
<input type="text" name="txt1" onblur="KanaCheck('txt1')">
<input type="text" name="txt2" onblur="KanaCheck('txt2')">
<input type="text" name="txt3" onblur="KanaCheck('txt3')">
</form>
</body>
</html>

ちょっと面倒なやり方ですが、以下の様なものはいかがでしょう?
テキストボックスのonblurイベント時にVBScriptでチェックしています。

----サンプル-----
<html>
<head>
<title>半角カナチェック</title>
<script language="vbscript">
Function KanaCheck(strTarget)
Dim obj, i, strChar, intAscBuff
For Each obj in frm1
If InStr(obj.name, strTarget) > 0 then
For i = 1 To Len(obj.value)
strChar = Mid(obj.value, i, 1)
intAscBuff = Asc(strChar)
If intAscBuff < Asc("ア") Or intA...続きを読む

Aベストアンサー

gotoPageFromAA011
という関数は、JavaScriptの関数です。

書き方や呼び出し方云々の問題ではなく、直接実行はVBScriptで行える場所にはありません。

Call gotoPageFromAA011()
↑よってこの部分は不要です。


要は、ログインボタンエレメントを取得して、クリックさせてあげると、中で勝手にJavaScriptが実行します。


gotoPageFromAA011をコメントアウトし、以下のコードを追加してください。

'Call gotoPageFromAA011() ← コメントアウト

'↓以下追加
Call SubmitFunctionCall(objIE.Document)

Sub SubmitFunctionCall(p_doc)
Dim l_divLogin
Set l_divLogin = p_doc.getElementById("loginForms")

Dim l_divSec
Set l_divSec = l_divLogin.ChildNodes(0)

Dim l_htmTbl
Set l_htmTbl = l_divSec.ChildNodes(0)

Dim l_htmTblRow
Set l_htmTblRow = l_htmTbl.Rows(0)

Dim l_htmTblCell
Set l_htmTblCell = l_htmTblRow.Cells(1)

Dim l_htmBtn
Set l_htmBtn = l_htmTblCell.ChildNodes(0)
Call l_htmBtn.Click()
End Sub


ってかこの手の質問は、「ASPカテゴリ」ではなく、「JavaScriptカテゴリ」か「VBカテゴリ」に質問した方が素早い回答を得られますよ。

gotoPageFromAA011
という関数は、JavaScriptの関数です。

書き方や呼び出し方云々の問題ではなく、直接実行はVBScriptで行える場所にはありません。

Call gotoPageFromAA011()
↑よってこの部分は不要です。


要は、ログインボタンエレメントを取得して、クリックさせてあげると、中で勝手にJavaScriptが実行します。


gotoPageFromAA011をコメントアウトし、以下のコードを追加してください。

'Call gotoPageFromAA011() ← コメントアウト

'↓以下追加
Call SubmitFunctionCall(objIE.Document)

Sub Subm...
続きを読む

QINPUTタグのカンマ対策

下記のようにASPでテキストボックスを書く関数を設けたいと思っています。

Private Function fMakeText(TextValue)
fMakeText = "<INPUT type='text' value='" & TextValue & "'>"
End Function

引数のTextValueがテキストボックスに表示させたい値なのですが、TextValueに ' や " があると表示がうまくできません。
このような場合はどうするのが適当でしょうか?
教えてください。

Aベストアンサー

1.文字参照を使用する。「'」は「'」、「"」は「&」となります。
又は
2.TextValueの1文字目に「'」や「"」が来ない場合はvalue=""の""をなくす。
又は
3.JavaScriptを使用して書き出す。

Qbasp21でのファイルアップロード確認画面

BASP21を使用してファイルのアップえロードをしています.

現状で<input type=file>で選択したファイルを
submitボタン押下でファイルのアップロードする所までは
期待どうりの動作しています.

ここに、アップロード確認画面をつけくわえたいのですが
確認画面でどのようにファイルうけ渡せばよいか分からず困っています

つまり、
1.ファイル選択画面
  ・ファイル選択
  ・submitボタン
    ↓
2.確認画面(アップロードするファイルのパス表示)
  ・アップするファイルパス表示
  ・submitボタン
    ↓
3.アップロード結果表示画面
  (ここで始めてファイルのアップロード)  

ということがしたいのです.
しかし、2の状態でファイル情報を保持し、
3へ受け渡すのかが分かりません.

どうか、お力添えお願いします.

Aベストアンサー

できないでしょう。
ブラウザがそういうことを許さないように実装されてるでしょうから。
もしできちゃえば input type=file にシステムファイル等を初期値で入れたページがわんさかで危険です。
ページを表示したらファイルをアップロードされちゃう。

Q【BASP21+ASP】MDEファイルがDL出来なくなった

いつもお世話になっております。

IIS+VBSで、サーバーに上げたファイルを各自の端末でダウンロード出来る
ページを作成しています。

例えば、クライアントで
<a href="download.asp?FILE=見積書.xls">見積書</a>
をクリックすると、download.aspに変数FILE(見積書.xls)が
渡され、download.asp側でtoolsフォルダ配下の見積書.xlsを
ダウンロードする準備を行う、といった具合です。

これまで順調に動いていたのですが、ここ2,3日で急に
AccessのMDEファイルがダウンロード出来なくなってしまいました。
本来ならダウンロード確認画面に「XXX.mde」と表示されるはずが、
「download.asp?FILE=XXX_mde」と書き換えられたかのように表示され、
保存しようとしてもエラーになります。

開く を選択するとASPのエラーが表示されるのですが、
BASP21のobjBasp.BinaryReadメソッドのところで「特定できないエラー」が
表示されています。

今までMDEファイルもダウンロード出来ましたし、家で同じ環境を構築しても
上手くいったのですが、会社の環境だけこのような事態になっています。

どなたかこの解決方法をご教授願えませんでしょうか?
よろしくお願い致します。

(会社、自宅とも、WinXP+IIS6です)

---------------download.asp のソース--------------
Dim dat

Dim objBasp
Dim fname
Dim bydata

fname = Request.QueryString("FILE")


Response.ContentType = "application/octet-stream;name=" & fname
Response.AddHeader "Content-Disposition","attachment;filename=" & fname

Set objBasp = Server.CreateObject("Basp21")
bydata = objBasp.BinaryRead(Server.MapPath("tools/" & fname))

Response.AddHeader "Content-Length", ubound(bydata) + 1
Response.BinaryWrite bydata

Set objBasp = Nothing
-------------------------------------------------------

いつもお世話になっております。

IIS+VBSで、サーバーに上げたファイルを各自の端末でダウンロード出来る
ページを作成しています。

例えば、クライアントで
<a href="download.asp?FILE=見積書.xls">見積書</a>
をクリックすると、download.aspに変数FILE(見積書.xls)が
渡され、download.asp側でtoolsフォルダ配下の見積書.xlsを
ダウンロードする準備を行う、といった具合です。

これまで順調に動いていたのですが、ここ2,3日で急に
AccessのMDEファイルがダウンロード出来なくなってしま...続きを読む

Aベストアンサー

BASP21
↑これ有償のを利用しないと、業務に使える代物ではないので、使ったことがないのですが、、、

>今までMDEファイルもダウンロード出来ましたし、家で同じ環境を構築しても上手くいったのですが、会社の環境だけこのような事態

これから言えるのは、
「環境の問題であって、プログラミングの問題ではない」
と想像されます。

WinXP+IIS6となっていましたが、
WinXPはIIS5.1ですよね?
もしかしたら会社はWin2003とか?

それと何もレスポンスを返すための配列であれば、BASP21を利用しないでも、ASP.netの標準機能でできます。
いっその事BASP21をはずして、書き換えてはいかがですか?

有償版を利用しているのであれば、ここの掲示板よりBASP21のサポートを受けるべきですが、そうでない場合は
「特定できないエラー」
なんて状態になったときに、対応の取りようがありません。


おすすめ情報