vbscript - ASP 崩溃 - AD 查询和 AD 配置文件缺少“首字母”的问题
问题描述
当 AD 配置文件缺少中间首字母时,我的 AD 查询遇到了麻烦。这是 vbscript 片段
strRSUser = "SELECT displayname,givenName,initials,sn,employeeID,postalcode,memberOf,objectCategory,physicaldeliveryoffi cename,mail,manager FROM 'LDAP://" & strDomain &"' WHERE samaccountname = '"& varUser &"' ORDER by name "
rsUser.Open strRSUser, connAD,1,1
确保记录集不为空(即这是一个有效用户),然后设置会话变量
If NOT (rsUser.BOF AND rsUser.EOF) Then
Dim varInitials
Session("userAccess") = 1
varEmail = rsUser.Fields.Item("mail").Value
varEmployeeID = rsUser.Fields.Item("employeeID").Value
varFirstName = rsUser.Fields.Item("givenName").Value
varInitials = rsUser.Fields.Item("initials").Value
varLastName = rsUser.Fields.Item("sn").Value
varOffice = rsUser.Fields.Item("physicaldeliveryofficename").Value
varInitialsChk = IsEmpty(varInitials)
Session.Timeout = 60
Else
Session("userAccess") = 0
' End valid user check
End If
我的问题:
我需要考虑 varInitials 可能不存在的可能性。还没找到办法。因此,对于在 AD 中没有中间首字母的用户,下面的 javascript 行会中断。到目前为止,我唯一的解决方案是完全省略 varInitials,但这并不理想。当 varInitials 存在时,我想用它们填充 from 字段:
"if(emptyString.test(theForm.ctl00$ctl00$mpcSingleContent$cntrlID_23172.value)) {" & vbCrLf & _
" theForm.ctl00$ctl00$mpcSingleContent$cntrlID_23172.value = """ + varLastName + ", " + varFirstName + " " + varInitials + """" & vbCrLf & _
"}" & vbCrLf & _
谁能帮忙?
解决方案
推荐阅读
- html - 如何将 div 的形状作为图像形状
- python - 尝试在 discord.py 上使用斜杠命令时出现一个奇怪的错误
- winapi - 确定 MFT 是 GPU 还是 CPU?
- python - 使用 Docker Python SDK 创建 Docker 容器失败
- hpx - 是否可以将自己的线程池带到 hpx?
- jetbrains-ide - JetBrains Rider - 上移/下移热键
- android - How to clear adapter when new paging data is submitted?
- python - Numba 编译源错误省略了错误
- flutter - 尽管快照中有数据,Streambuilder snapshot.hasData 永远不会为真
- .net-core - 可以在 .Net Core 类库项目中使用 .NET PresentationCore 中的 3D 几何类吗?