質問

このコードをASPページ内で機能させようとしています。ユーザーがOnClickボタンをクリックすると、このページに移動し、そのユーザーのユーザー名とコードを実行した時間を保存するファイルが作成されます。これまでのところ、このコードを実行すると、" userinfo.flag"が作成されます。ファイルが、ユーザーのデータをキャプチャしません。基本的に、ユーザーデータを正しく取得していません。

<%
Set FSO = Server.CreateObject("Scripting.FileSystemObject")
Set NewTextFile = FSO.OpenTextFile(server.mappath("UserInfo.flag"),2,true)
Set WshNetwork = WScript.CreateObject("WScript.Network")
WScript.Echo "User Name = " & WshNetwork.UserName
NewTextFile.WriteLine("user:")
NewTextFile.WriteLine(WshNetwork.userName)
NewTextFile.WriteLine(Now)
NewTextFile.Close
Set NewTextFile = Nothing
Set FSO = Nothing

%>

<HTML>
<HEAD>
<TITLE>TEST PAGE</TITLE>
</HEAD>
</HTML>
役に立ちましたか?

解決

.asp環境で作業する場合、.vbs環境と同じグローバル変数をすべて使用できるわけではありません。以下にいくつかを示します。

  • WshNetworkオブジェクトを使用してユーザーに関する情報を検索しないでください。その情報(ユーザーが認証されている場合)は Request.ServerVariables [&quot; AUTH_USER&quot;]
  • で入手できます。
  • WScript.Echo
  • の代わりに Response.Write を使用します

これにより、ユーザー情報が正しく取得されます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top