vbscript:任意のファイル名を開くには?

解決


sinji  2004-11-03 06:22:48  No: 117341

この度初めて投稿させていただきます。
webサーバのaspファイル内にvbscriptを使用してXMLを操作しようとしているのですが、XMLのタグを出力、入力、までは出来たのですが、ファイルの入出力に関して、vbscriptの request.form("フォーム名") を使って、
set Domobj = server.CreateObject("microsoft.xmlDom")
Domobj.load(server.mappath("<%=request.form("フォーム名")%>.XML"))
と記述して「フォーム名」から送られてきたデータ(名)を、ファイルを開く際に使おうと思ったのですが、上記の方法では、開くファイルの名前を任意で指定できませんでした。ファイルの入出力をしたいファイルの名前を、任意で指定してファイル入出力をするには、どのようにしたら良いのでしょうか。
よろしくお願いいたします。


魔界の仮面弁士  2004-11-03 13:18:15  No: 117342

> set Domobj = server.CreateObject("microsoft.xmlDom")
サーバー側で使うなら、Microsoft.XMLDOM ではなく、
  Set DomObj = Server.CreateObject("Msxml2.FreeThreadedDOMDocument.4.0")
の方が、速度面/仕様面/セキュリティ面で好ましいですよ。
http://www.microsoft.com/downloads/details.aspx?FamilyID=3144b72b-b4f2-46da-b4b6-c5d7485f2b42&displaylang=ja

> Domobj.load(server.mappath("<%=request.form("フォーム名")%>.XML"))
この時点で、<% =式 %> を使っては駄目ですよ。書くとすれば、
  Domobj.load Server.MapPath(Request.Form("フォーム名") & ".XML")
になります。

「サーバ側で実行される処理」と「クライアント側で実行される処理」を、
混同されているようですね。もう一度見直してみて下さい。

Server.MapPathは、「サーバ側」で実行される処理ですので、
すでに <% 〜 %> ブロックの中に書かれていると思います。

その中で、さらに <% = 式 %> のような記述を書いても無意味ですよ。


sinji  2004-11-04 08:13:30  No: 117343

魔界の仮面弁士さん。有難うございます。魔界の仮面弁士さんのおかげで無事、解決いたしました。重ね重ね有難うございます。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加