小编Pet*_*ton的帖子

如何在ColdFusion中读取名称中包含特殊字符的cookie值?

我正在使用ColdFusion尝试读取存储在名为"LiSESSION:test-0"的会话cookie中的值.cookie存储在"test.com"域中,代码来自"community.test.com",我无法访问代码来更改名称.我正在阅读"test.com"中的值,这是我能够访问cookie的方式.

例如:

<cfparam name="cookie.LiSESSIONID:test-0" type="string" default="" />
Run Code Online (Sandbox Code Playgroud)

..引发错误,说":"是无效字符("无效的解析器构造").

cookies coldfusion

4
推荐指数
1
解决办法
2442
查看次数

在coldfusion中检查多个表单以在同一页面上提交

你好再次stackoverflow ...

我再一次遇到麻烦的问题.我有一个页面,我使用jQuery选项卡分割三个更新表单.(两个真的,一个是cfgrid所以它实际上并不重要.)基本上,当你提交第一个表单选项卡时,它很好.但是,如果您提交最后一个表单,它会提交并刷新页面,但不会更新任何内容.

我已经确定它与识别提交的表单有关.

注意:这些表单正在提交给他们所在的同一页面,所以我使用的方法是:

<cfif isdefined("form.submit")>
//database stuff etc
</cfif>
Run Code Online (Sandbox Code Playgroud)

我最后通过这样做提交表格:

<input type="submit" name="submit" id="button"  value="Save Changes" onclick = "form.submit()" />
Run Code Online (Sandbox Code Playgroud)

在确定它有什么与识别提交哪个表单之后,我将按钮更改为:

<input type="submit" name="submit" id="button"  value="Save Changes" onclick = "document.forms["form3"].submit()" />
Run Code Online (Sandbox Code Playgroud)

我不确定这是否是最有效的方法...而且我不确定如何在coldfusion部分提交form3 ...我试过:

<cfif isdefined("form3.submit")>
Run Code Online (Sandbox Code Playgroud)

但这不起作用.它不遵循代码.

注意:我正在使用coldfusion 8.此外,使用CFAJAX标签是有限的,因为我们的ITS部门没有在服务器上正确设置coldfusion ......他们不相信我.因此,我很乐意以这种奇怪的方式做到这一点.它只支持cfgrid一些奇怪的原因......

forms coldfusion

4
推荐指数
1
解决办法
7149
查看次数

ColdFusion ORM可以处理Unicode字符串吗?

如何让CF9的ORM(又名Hibernate)将字符串保存为unicode字符串?

N'string'在SQL Server中使用前缀

谢谢!

coldfusion orm hibernate coldfusion-9

4
推荐指数
1
解决办法
320
查看次数

双击CFEclipse中的文本选择

在CFEclipse中,我做了很多双击选择文本.标准行为是选择最近的单词边界内的所有文本.在编辑原始编辑器不使用camel-case的代码时,这是有问题的; 例如,他们将"myObject"写为"my_object".

有没有办法更改双击选择行为以包含'_'作为有效的单词字符?

eclipse coldfusion configuration cfeclipse

3
推荐指数
1
解决办法
1351
查看次数

查找列表中最长项目长度的最有效方法是什么?

给出各种长度单词的列表,找到任何单词的最大长度的最佳方法是什么?

例如,以下应返回6

findMaxLen("a,set,of,random,words")
Run Code Online (Sandbox Code Playgroud)


当然,这样做是相当微不足道的......

<cffunction name="findMaxLen" returntype="Numeric">
    <cfset var CurMax = 0 />
    <cfset var CurItem = 0 />
    <cfloop index="CurItem" list="#Arguments[1]#">
        <cfif Len(CurItem) GT CurMax >
            <cfset CurMax = Len(CurItem)/>
        </cfif>
    </cfloop>
    <cfreturn CurMax />
</cffunction>
Run Code Online (Sandbox Code Playgroud)


或者,更短一点......

<cffunction name="findMaxLen" returntype="Numeric">
    <cfset var CurMax = 0 />
    <cfset var CurItem = 0 />
    <cfloop index="CurItem" list="#Arguments[1]#">
        <cfset CurMax = Max( CurMax , Len(CurItem) ) />
    </cfloop>
    <cfreturn CurMax />
</cffunction>
Run Code Online (Sandbox Code Playgroud)


但是有更好的方法 - 更高效的东西吗?

也许是一些Java方法?转换为数组并按项目长度排序?计算逗号之间的最大差距?


在实际应用中,无论是上述两个例子将罚款我目前的需求,这是不适合的东西是性能的关键,所以我并不需要一个答案,但我认为这仍然将是有趣的看看人们会想出什么......

language-agnostic string coldfusion code-golf list

3
推荐指数
1
解决办法
925
查看次数

正则表达式找到<%但排除<%@?

有人可以为我提供一个正则表达式,可以找到这个字符串:<%但是会排除这个字符串:<%@谢谢.

regex eclipse

3
推荐指数
1
解决办法
813
查看次数

如果循环体中的长度变小,如何更新最大循环长度?

我有以下数组.

<cfset ItemHasUsers = arrayNew(1)>
<cfloop query="qReadData">
 <cfset ItemHasUsers[qReadData.currentrow]["ID"] = qReadData.ID >
 <cfset ItemHasUsers[qReadData.currentrow]["Asset"] = qReadData.COUNTOFITEMS >
</cfloop>
Run Code Online (Sandbox Code Playgroud)

我从我的数据库中获取了一些记录,这些记录放入表中并通过表单进行操作.

<form action="same-site.cfm method="post">
<table>
 <tr>
  <th>ID</th>
  <th>Asset</th>
  <th>Delete</th>
 <tr>
<cfset ItemHasUsers = Item.getItemHasUsers() >
<cfoutput>
<cfloop index="i" from="1" to="#arrayLen(ItemHasUsers)#">
  <td>#ItemHasUsers[i]["ID"]#</td>
  <td><input type="text" name="upd_#ItemHasUsers[i]["ID"]#" maxlength="6" size="6" value="#ItemHasUsers[i]["Asset"]#"></td>
  <td><input type="checkbox" name="del_#ItemHasUsers[i]["ID"]#"></td>
 </tr>
</cfloop>
</cfouput>
</table>
<input type="submit" value="OK">
</form>
Run Code Online (Sandbox Code Playgroud)

依赖我的输入我想更新我的数据库.目前我循环通过表单结构来清除我想要删除的用户.看起来很丑,但我不知道更好的方法 - >看初学者标签;)

<cfset ItemHasUsers = Item.getItemHasUsers() >
<cfloop collection="#form#" item="key">
 <cfif left(key,len("DEL_")) eq ("DEL_")>
  <cfset Id = listLast(key,"_") >
  <cfloop index="i" from="1" to="#arrayLen(ItemHasUsers)#"> …
Run Code Online (Sandbox Code Playgroud)

arrays coldfusion loops

3
推荐指数
1
解决办法
851
查看次数

正则表达式是匹配和替换文本的最佳方式吗?

我很清楚正则表达式是什么,所以请避免给我定义.我只是在寻找意见,甚至可能是一些建议.我很快就读毕业了,获得了计算机科学学位,到目前为止,我接受过正规表达的唯一教育是通过PL设计和开发课程.我们从未接受过关于它在我们编写的程序中的实际应用和使用的教育,只是使用Regex来实际使用编程语言.

我的问题是,我是否正确地假设正则表达式是匹配和处理文本的最强大的工具?如果我错了,还有什么我应该自学(而不是变成正则表达式)?另外,有没有人知道Eclipse IDE的任何好的正则表达式插件(最好是Galileo).我正在寻找能够让我测试文档的东西,并且可能会突出显示正在做的事情.谢谢

regex eclipse eclipse-plugin

3
推荐指数
1
解决办法
1272
查看次数

Coldfusion会话Cookie

我正在尝试在访问某个页面时删除客户端会话cookie.我该怎么做呢?

cookies coldfusion session

3
推荐指数
1
解决办法
3648
查看次数

将八位数转换为日期的最有效方法是什么?

我正在使用ColdFusion 9.0.1和一些我无法改变的数据库.

我正在访问一个数据库,该数据库将日期存储为八位数字,零小数位,如下所示:

YYYYMMDD
Run Code Online (Sandbox Code Playgroud)

我需要能够读取日期,添加和减去日期的天数,并创建新的日期.我正在寻找一个ColdFusion解决方案,以有效(不多的代码)将日期转换为我们的标准格式,即

MM/DD/YYYY
Run Code Online (Sandbox Code Playgroud)

然后将其转换回数据库的格式以便保存.

我需要以这样的方式对此进行编码:非ColdFusion程序员可以轻松地读取并使用它,复制和修改它以用于其他功能(例如向日期添加一天).所以,我不是在寻找最少量的代码,而是高效可读的代码.

您能否提出任何可以使此代码块更灵活,更易读或更高效(更少代码)的内容?

<cfscript>

// FORMAT DB DATE FOR BROWSER
DateFromDB = "20111116";
DatedToBrowser = createBrowserDate(DateFromDB);
writeOutput(DatedToBrowser);

function createBrowserDate(ThisDate) {
    ThisYear = left(ThisDate, 4); 
    ThisMonth = mid(ThisDate, 4, 2);
    ThisDay = right(ThisDate, 2);
    NewDate = createDate(ThisYear, ThisMonth, ThisDay);
    NewDate = dateFormat(NewDate, "MM/DD/YYYY");
    return NewDate;
}

// FORMAT BROWSER DATE FOR DB
DateFromBrowser = "11/16/2011";
DateToDB = createDBDate(DateFromBrowser);
writeDump(DateToDB);

function createDBDate(ThisDate) {
    ThisYear = year(ThisDate); 
    ThisMonth = month(ThisDate);
    ThisDay = day(ThisDate);
    NewDate = "#ThisYear##ThisMonth##ThisDay#";
    return …
Run Code Online (Sandbox Code Playgroud)

coldfusion date coldfusion-9

3
推荐指数
2
解决办法
2587
查看次数