2010-05-29

Lotus Script 如何取出 Query String 的變數 ?


Lotus Domino 會把使用者傳進來的 Query String 放到 session.DocumentContext 的 Query_String 這個預設欄位裡,因此,只要先取出 Query String 之後,就可以來進行字串的整理來取得傳入的各個數了。
阿舍的做法是想要從 Query String 裡取出 Key - Value 的陣列,在 Lotus Script 裡的這種陣列叫做 List ,所以,阿舍下面的這個函數會需要傳入一個 List 變數來傳回一個 Key- Value 的陣列...

Function initParament(strQueryString As String,strParament List As String) As Integer

  On Error Goto errorHandler

  Dim vntBuffer as Variant
  Dim i as integer
  Dim strParaName as String

  vntBuffer = Split(strQueryString,"&")
  intParament = Ubound(vntBuffer)
 
  For i=1 To getParament
    strParaName = Split(vntBuffer(i),"=")
    strParament(strParaName(0)) = strParaName(1)
  Next

  Exit Function

  errorHandler:
  Print "Error" & Str(Err) & ": " & Error$ & " on line " & Cstr(Erl)
End Function


下面是應用的範例 ( 假設會傳入 uid 及 img 兩個變數 )...

On Error Goto errorHandler

Dim session As New NotesSession
Dim intVarNum As Integer
Dim strParamentList List As String

Set doc = session.DocumentContext

intVarNum = getParament(doc.Query_StringDecoded(0),strParamentList)

print "uid = " & getParament('uid')
print "img = " & getParament('img')

推薦閱讀


有疑問? 問題還是沒解決嗎? 歡迎下方留言提問和討論 😁

沒有留言 :

張貼留言

歡迎留言提問和討論 .... 😁