2017-07-09 35 views
0

用asp classic为客户制作预览表格。 我有数据“电子邮件字段”在db.for例如,在email_field有一个电子邮件地址。三个字符后所有字母改为星号

[email protected]

,但我想客户看到的;

荷兰Joh **********

我不解决这个问题。我可以使用哪些代码?

<%=Response.Write email_field %> 
<%=Left(rs_mydb("email_field"),3)%> 
<%=Replace(rs_mydb("email_field")),"","*"%> 

回答

1

有没有必要使用替换。相反,你可以建立一个新的字符串来打印。

<% 
emailFromDb = rs_mydb("email_field") 
emailForPrint = Left(emailFromDb, 3) & String(Len(emailFromDb) - 3, "*") 
Response.Write emailForPrint 
%> 
+0

值得添加一些健全性检查,以便在没有电子邮件或短于三个字母的电子邮件时代码不会崩溃。 (数据在被放入数据库之前可能没有被验证,所以甚至可能是XSS保护) –

+0

@ShadowWizard它会的,但我策略性地选择不这样做。这往往不值得。我觉得花更多的时间比运行任务不再合适。至少,我希望他们对我们的问题表现出比我更多的兴趣。当它发生时(例如反馈)会话发生,因此更新以获得更可靠的建议是肯定的。顺便说一句嗨,我没有看到你在这里([asp-classic],[vbscript])很长一段时间:) –

+0

那么,同意更复杂的事情,但简单如果..然后验证长度是非常微不足道的。我现在只接收订阅电子邮件,大多数问题已经得到解答,就像这个问题一样。 :-) –

相关问题