我正在开发一个冷箱应用程序,我想创建一个接受'n'个路径变量作为一个变量的路由.这就是我的意思.
http://localhost/api/variable1/variable2/variable3/...
Run Code Online (Sandbox Code Playgroud)
我希望能够/api作为一个路径变量获取所有内容,我可以拆分/并获取值或者能够迭代所有变量之后/api.
有没有办法设置路线来做到这一点?
with(pattern="/api", handler="api")
.addRoute(pattern="/:variables", action="index")
.endWith();
Run Code Online (Sandbox Code Playgroud)
任何想法都将非常感激.提前致谢.
如果我正在从coldfusion页面(到另一个coldfusion页面)进行AJAX调用,那么coldfusion会正确使用会话吗?我不能用这种方式使用cookies,对吗?这两个页面将有单独的application.cfc/cfm页面.
我正在尝试使用Mandrill和ColdFusion 6.1.ColdFusion不是Mandrell支持的语言之一.我很确定我需要使用cfhttp和Post.是否有任何资源或示例可以帮助我.
在ColdFusion 10中:
我正在尝试从来自datepicker的字符串返回有效的日期时间字符串.
字符串格式为:
15 Aug 2014 - 12:47 PM
Run Code Online (Sandbox Code Playgroud)
我想最终得到:
{ts '2014-08-15 12:47:00'}
Run Code Online (Sandbox Code Playgroud)
我写了这个可怕的函数来获取字符串的每个部分并尝试createDateTime():
public function formatDateTimeFromPicker(required string thedate){
var c={};
var d=arguments.thedate;
c.year=listGetAt(d, 3, " ");
c.month=returnMonthAsNumber(listGetAt(d, 2, " "));
c.day=listGetAt(d, 1, " ");
c.time=listGetAt(d, 5, " ");
c.hour=listGetAt(c.time, 1, ":");
c.minute=listGetAt(c.time, 2, ":");
c.tt=listGetAt(d, 6, " ");
if(c.tt == "PM" AND c.hour NEQ 12){
c.hour=(c.hour + 12);
}
return createDateTime(c.year, c.month, c.day, c.hour, c.minute, 00);
}
public function returnMonthAsNumber(required string monthstring){
var months="Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec";
return listFindNoCase(months, arguments.monthstring);
} …Run Code Online (Sandbox Code Playgroud) 请考虑以下代码,我用它来获取Sendgrid发布的数据.
<cftry>
<cfset incomingData = toString(getHttpRequestData().content) />
<cfset djs = DeserializeJSON(incomingData)/>
<cfset a = "0">
<cfset b = "">
<cfset c = "0">
<cfset d = "0">
<cfset e = "">
<cfset f = "">
<cfset g = "">
<cfset h = "">
<cfset i = "">
<cfset k = "#NOW()#">
<cfset l = "">
<cfset m = "">
<cfset n = "">
<cfoutput>
<cfloop from="1" to="#arraylen(djs)#" index="i">
<cfset a = "0">
<cfset b = "">
<cfset c = "0"> …Run Code Online (Sandbox Code Playgroud) 我正在尝试将数据插入空白表.数据来自提交的表单.该表设置有自动增量PK.问题是,当我插入信息时,表格中没有任何内容.表单中的信息包括除PK编号之外的所有内容.当我手动添加数字然后它正常工作.这就是代码的样子:
<cfquery name="updateInsOpTable" datasource="applewood">
INSERT INTO ins_opt_table
VALUES ('123 applewood road','1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19','20','21','22')
</cfquery>
Run Code Online (Sandbox Code Playgroud)
这会引发错误,因为没有PK.那么如何在没有PK的情况下将数据插入表中呢?
在Application.cfc中,在应用程序超时或服务器关闭时调用OnApplicationEnd.但是,我能确切地说出原因是哪一个吗?我只想在服务器关闭时运行一些清理代码,而不是在应用程序超时时运行.我真的能这样做吗?
实际上我使用UserId与客户端范围.
我可以直接在组件文件中使用Client范围,还是仅通过参数范围使用?鉴于以下代码哪一个是正确的?或者两者都对吗?
使用客户端范围:
<cfset getUsers = Application.Users.getAllUsers()>
<cffunction name="getAllUsers" returntype="query">
<cfquery name="read" datasource="myDsn">
Select *
from Users
Where UserID = <cfqueryparam cfsqltype="cf_sql_integer" value="#Client.UserID#">
</cfquery>
<cfreturn read>
</cffunction>
Run Code Online (Sandbox Code Playgroud)
使用参数范围:
<cfset getUsers = Application.Users.getAllUsers(UserID = Client.UserID)>
<cffunction name="getAllUsers" returntype="query">
<cfargument name="UserID" type="any" required= "true">
<cfquery name="read" datasource="myDsn">
Select *
from Users
Where UserID = <cfqueryparam cfsqltype="cf_sql_integer" value="#arguments.UserID#">
</cfquery>
<cfreturn read>
</cffunction>
Run Code Online (Sandbox Code Playgroud)
请给我方便的解决方案.提前致谢.
我在使用cf9加密和解密功能时遇到问题.具体来说,我使用的代码需要能够使用AES/ECB/PKCS5Padding 256加密.我正在尝试使用以下代码将数据发布到第三方银行:
<cfparam name="theKey" default="someStaticKey">
<cfset strName = leaddetail.leadlast&','&leaddetail.leadfirst />
<cfset stFields = {requesttype = "eftaddonetimecompletetransaction"
,clientid = "XXXXXX"
,urltoredirect = "#RedirectURl#"
,customerid = "#leaddetail.leadid#"
,isdebitcardonly = "No"
,customername = "#strName#"
,customeraddress1 = "#form.billingaddress#"
,customercity = "#form.billingcity#"
,customerstate = "#form.billingstate#"
,customerzip = "#form.billingzip#"
,cardbillingaddr1 = "#form.billingaddress#"
,cardbillingcity = "#form.billingcity#"
,cardbillingstate = "#form.billingstate#"
,cardbillingzip = "#form.billingzip#"
,accounttype = "CC"
,name_on_card = "#form.leadname#"
,accountnumber = "#form.ccacctnum#"
,expmonth = "#Left(form.ccexpdate,2)#"
,expyear = "#Right(form.ccexpdate,2)#"
,cvvcode = "#form.ccv2#"
,amount = "#NumberFormat(esigninfo.esignpayamt,'9999.99')#"
,startdate = "#DateFormat(Now(),'YYYY-MM-DD')#"
,transactiontypecode …Run Code Online (Sandbox Code Playgroud) 我循环遍历这样的迭代:
<cfloop condition="depFeedIterator.hasNext()">
<cfset item=depFeedIterator.next()/>
<ul><li>#item.getValue('title')</li></ul>
</cfloop>
Run Code Online (Sandbox Code Playgroud)
这将返回所有标题.但我必须按字母顺序组织这些标题(这已在bean本身中完成).所以我添加了这个:
<cfif #left(#item.getValue('title')#,1)# == "a">
<li><h2>A</h2></li>
etc
Run Code Online (Sandbox Code Playgroud)
但如果我有一个以A开头的两个标题我得到这个:
一个
Abc
一个
AAB
代替 :
一个
Abc
Aac
我已经玩了一段时间而无法解决这个问题.我希望你们有一些建议
coldfusion ×10
coldfusion-9 ×2
mysql ×2
cfc ×1
cfloop ×1
coldbox ×1
cookies ×1
cryptography ×1
date ×1
datetime ×1
encryption ×1
iteration ×1
loops ×1
mandrill ×1
scope ×1
sendgrid ×1
session ×1
sql ×1
string ×1