0

对于 CFMail - 我正在构建一个 To: list 和 BCC: list using cfset tolist 和 cfset bcclist

这些输出就好了。但是当我将它们添加到 cfmail 中时 - tolist 和 bcclist 错误。

我不知道为什么,因为它们只是逗号分隔的列表。

获取:当前为 emailthis@gmail.com,emailthat@gmail.com,emailagain@gmail.com 的属性值无效。

当我在上面的列表中硬编码时 - 它工作得很好。

下面的 alist 和 clists 创建得很好,对我来说看起来也很好。我似乎无法找到解决我做错了什么的方法。

 <cfoutput>
 <cfif isdefined("form.checkbox1")><cfset clist = "#checkbox1#"></cfif>
 <br><br>Check List #clist#
 </cfoutput>

 To:
 <cfset tolist = "#clist#,<cfif alist is not "">#alist#,</cfif><cfif len(other)>#other#</cfif>">
 <cfoutput>#tolist#</cfoutput>

 BCC List - basically the same

 <cfoutput>
 <cfmail type="html" from="bob@bob.com" to="#tolist#" bcc="#bcclist#" mimeattach="#pdfpath#file.pdf" subject="File.pdf">

 Blahhh
 </cfmail>
 </cfoutput>
4

1 回答 1

3

我建议重新编写代码以限定变量范围,并从 cfset 语句中删除 if 语句。另外,我假设这不是您的所有代码,因为 tolist 和 bcclist 从未在任何地方设置。试试下面的代码。

<cfset tolist = '' />
<cfset bcclist = '' />
<cfoutput>
 <cfif StructKeyExists(form,'checkbox1')>
  <cfset clist = form.checkbox1 />
 </cfif>
 <br><br>Check List #clist#
</cfoutput>

To:
<cfif Len(Trim(alist))>
 <cfset tolist = ListAppend(tolist,alist) />
</cfif>
<cfif Len(Trim(other))>
 <cfset tolist = ListAppend(tolist,other) />
</cfif>

<cfoutput>#tolist#</cfoutput>

<cfmail type="html" from="bob@bob.com" to="#tolist#" bcc="#bcclist#" mimeattach="#pdfpath#file.pdf" subject="File.pdf">
Blahhh
</cfmail>
于 2012-05-28T19:07:44.413 回答