2015-06-21 101 views
1

我最近接管了一個網頁,我有一些編程知識,通常可以混淆我的方式,但我似乎無法得到它今天。VBScript重定向到網絡文件夾

網站上有一段代碼,當用戶打開一個Intranet頁面時,會在網絡驅動器上打開一個文件夾。該文件夾是一個位置,所有用戶都有一個基於其網絡登錄名的文件夾。我希望它打開基於用戶名的網絡驅動器上的用戶個人文件夾,以便用戶不必搜索他們的文件夾。

我使用目前的代碼是下面的,它打開了所有用戶文件夾的網絡驅動器上市

<SCRIPT language=VBScript> 
sub SF1 
    window.location = "\\path to user folders\" 
end sub 
id = SetTimeOut("SF1",0,"VBScript") 
</SCRIPT> 

下面的代碼是我想什麼,但出於某種原因不能正常工作

<SCRIPT language=VBScript> 
sub SF1 
    window.location = "\\path to user folders\" & username 
end sub 
id = SetTimeOut("SF1",0,"VBScript") 
</SCRIPT> 

我使用以下命令獲取用戶的登錄這是alwasy 6個字符長

Right(Request.ServerVariables("LOGON_USER"),6) 

但是當我嘗試像這樣什麼也沒發生

<SCRIPT language=VBScript> 
sub SF1 
    window.location = "\\path to user folders\" & Right(Request.ServerVariables("LOGON_USER"),6) 
end sub 
id = SetTimeOut("SF1",0,"VBScript") 
</SCRIPT> 

我嘗試了好幾種排列組合來理解它是與可能沒有被正確地傳遞,但我實在不明白它的任何幫助將是引號的問題,用它讚賞。

此外,如果我打出來的完整路徑,它工作得很好,用戶文件夾

<SCRIPT language=VBScript> 
sub SF1 
    window.location = "\\path to user folders\username\" 
end sub 
id = SetTimeOut("SF1",0,"VBScript") 
</SCRIPT> 
+0

我曾試過這種方式,但它是等號,我現在失去了它的作品。等號改變了什麼? –

回答

2

Request.ServerVariables收集可在服務器端,你將獲得該值到客戶端腳本:

window.location = "\\path to user folders\<%=Right(Request.ServerVariables("LOGON_USER"),6)%>\"