我在Cold Fusion中有一个包含一组复选框的表单.我将此表单提交到页面frag5.cfm.frag5.cfm中只有一行代码.
<cfoutput>values are #form.f1# </cfoutput>
Run Code Online (Sandbox Code Playgroud)
此行显示"值是" - 也就是说,复选框的表单值,所有名称为f1都没有被选中.
这是获取这些值的错误方法吗?有人能告诉我正确的事吗?原始表格如下:
<form name = "fields"
action = "frag5.cfm"
method = "post"
onkeypress = "return event.keyCode != 13;">
<table style = "margin-left:165px" >
<caption style = "padding-top: 20px" >Restrict Report To: </caption>
<tr>
<td>Master Event:</td>
<td><input type = "checkbox"
id = "cb_e"
name = "f1"
value = ""
onclick = ischecked("cb_e","hid_e")
class = "check1">
<label for = "cb_e"> </label>
<input type = "hidden" name = "finsel" id = "hid_e" value = "unchecked"> …Run Code Online (Sandbox Code Playgroud) 我<cftry在<cfmail标签外面。在<cftrya 内设置变量x。变量x无法通过生存</cftry>。
<cfoutput>
<cftry>
<cfmail
from = "user@example.org"
to = "other@example.org"
password = "something"
username = "user@example.org"
server = "localhost"
replyto = "user@example.org"
subject = "try-catch"
type = "html" >
<cfset x = 'abc'>
this is to test email
</cfmail>
success
<cfcatch>
<cfoutput> email failed </cfoutput>
</cfcatch
</cftry>
<!--- there is no variable x --->
x is #x#
</cfoutput>
Run Code Online (Sandbox Code Playgroud)
我想找到某种方法来在结束后提取x的值<cftry。我尝试过在内部使用不同的范围进行设置<cftry
<cfset register.x = 'abc'> or even
<cfset session.x = …Run Code Online (Sandbox Code Playgroud) 我在ColdFusion 8中有以下代码
<cfcase value = "envelope, addrfile">
Run Code Online (Sandbox Code Playgroud)
这个工作正常,当值是包络时一切都正确,但是当值为addrfile时,情况不会执行.当我删除信封,然后写
<cfcase value = "addrfile">
Run Code Online (Sandbox Code Playgroud)
案件被执行,一切都是正确的.文档说,我引用:一个cfcase标记可以匹配多个表达式值.为此,请将匹配值与分隔符的默认值分开.例如,以下行匹配"红色","蓝色"或"绿色":
<cfcase value="red,blue,green">
Run Code Online (Sandbox Code Playgroud)
任何人都可以提出一个可能不适合我的原因吗?或者不涉及复制案例中所有代码的解决方法?
在我的 ColdFusion 程序中,我为一个或多个收件人创建电子邮件 (HTML/CSS),并将其放在一个 .cfm 文件中。电子邮件格式很好。当我将保存的文件作为程序运行时,cfmail 标签将电子邮件发送给任何人,这一切正常。但是,在此过程中,我的格式丢失了。我知道当电子邮件到达其目标时,我的本地 CSS 没有理由运行。但如果我能保留我开始的格式就好了。
有没有人对我如何做到这一点有建议。
我在select语句中选择了State和Zip3两列,准确说明了我想看到的内容.当我在原生MySQL中执行此操作时,我得到了正确的结果:
SELECT State,Zip3, FirstName, LastName, State, Zip3
FROM Person
WHERE State >= 'A'
ORDER BY State, Zip3
LIMIT 10;
+-------+------+-----------+-------------+-------+------+
| State | Zip3 | FirstName | LastName | State | Zip3 |
+-------+------+-----------+-------------+-------+------+
| AB | T7X | Adalei | Starreveld | AB | T7X |
| AK | 998 | Linda | Rosenthal | AK | 998 |
| AL | 361 | Benjamin | Sung | AL | 361 |
| AL | 362 | Lawrence | …Run Code Online (Sandbox Code Playgroud) 我有一个传递变量的表格,里面有很多隐藏的输入,然后是一个提交。这是一些代码:
<input type = "hidden" name = "templname" value = '#templname#'>
<input type = "hidden" name = "attloc" value = '#extattloc#'>
<input type = "hidden" name = "cctype" value = 'f'>
<input type = "hidden" name = "merls" value = '#merls#'>
<input type = "hidden" name = "invnum" value = '#invnum#'>
<cfif ArrayIsDefined(selvalarr,1)>
<cfloop array = "#selvalarr#" index = "att">
<input type = "hidden" name = "att" value ="#att#">
</cfloop>
</cfif>
<cfloop array = "#letarr#" index = "let">
<input type …Run Code Online (Sandbox Code Playgroud) 在ColdFusion中,我使用创建一个新目录<cfdirectory。然后,我需要将几个文件从一个目录复制到新目录,并保持相同的文件名。我可以使用循环来执行此操作,但我想知道cffile中是否有任何函数可以一次复制多个文件。
繁琐-使用reploc和newloc作为源目录和目标目录:
<cfdirectory
directory = 'newloc'
action = 'create'
mode = 777>
<cfoutput>
<cfset extrep = ExpandPath('reploc')>
<cfset extnew = ExpandPath('newloc')>
<cfset flist = 'a.cfm', 'b.cfm'>
<cfloop list = '#flist#' index = 'item'>
<cffile
action = "copy"
source = "#extrep#/#item#"
destination = "#extnew#/#item#"
mode = "766" >
</cfloop>
</cfoutput>
Run Code Online (Sandbox Code Playgroud)
我正好要复制四个文件。它们是固定的,不依赖于任何用户输入。
我希望<cffile能够支持复制多个文件,但找不到任何可以复制的文件。谁能建议一种更简化的方法来设置带有四个文件的目录?
我正在使用cffile创建新文件或更新现有文件,具体取决于用户请求的内容.请求来自前一个过程的表单,因此涉及cffile的代码如下所示:
<cfset thefile = "#form.dyn#">
<cfoutput>
<cfsavecontent variable = "testvar">
#form.editor1#
</cfsavecontent>
<cffile action = "write"
file = "/var/www/reports/#thefile#.cfm"
output = "#testvar#">
</cfoutput>
Run Code Online (Sandbox Code Playgroud)
当我写完文件后,我想向用户确认发生这种情况.对于一个新文件,我可以使用IsDefined来检查它是否存在.但我想不出一种方法来检查已更新的现有文件.我考虑过cffile上的try/catch,但只有在看上去没有出错的情况下,catch才会运行.如果我没有收到错误,我可以假设一切都好吗?如果可能的话,我更愿意直接检查.有没有人有想法?
这是我的程序:
<cfset test = 'a~b~~c~d~~~e'>
<cfset test2 = Replace(test, '~~','~X~','all')>
<cfoutput>
test #test#
<br> test2 #test2#
<br>wanted: a~b~X~c~d~X~X~e
</cfoutput>
Run Code Online (Sandbox Code Playgroud)
我得到的输出:
test a~b~~c~d~~~e
test2 a~b~X~c~d~X~~e
wanted: a~b~X~c~d~X~X~e
Run Code Online (Sandbox Code Playgroud)
所以 test2 的输出是错误的这无疑与 Replace 函数的内部工作有关,但我需要它才能正常工作。
有谁知道这个问题的解决方法?
在编写Javascript函数时,我总是使用var作为变量的第一个赋值
var x = 1;
Run Code Online (Sandbox Code Playgroud)
后来x可能是别的东西.我应该写
if (something ) {
x = 2;}
Run Code Online (Sandbox Code Playgroud)
要么
if (something) {
var x = 2;}
Run Code Online (Sandbox Code Playgroud)
如果你能说出为什么那会有所帮助.
coldfusion ×9
cfml ×3
cffile ×2
coldfusion-8 ×1
email ×1
forms ×1
hidden ×1
html ×1
input ×1
javascript ×1
mysql ×1
replace ×1
try-catch ×1