我在我的CFWheels Coldfusion项目中使用Adobe Coldfusion Builder 3.
如你所知,在coldfusion中输出变量就可以做到这样的事情;
#varaible_name#
Run Code Online (Sandbox Code Playgroud)
但是我想使用空链接
<a href="#">link</a>
Run Code Online (Sandbox Code Playgroud)
使用它给我一个错误;
Invalid CFML construct found on line 23 at column 46.
Run Code Online (Sandbox Code Playgroud)
我目前正在使用
<a href="javascript:void(0)"></a>
Run Code Online (Sandbox Code Playgroud)
我读到的被认为是不好的做法.
这个功能还有其他替代方案吗?
我正在尝试将一小块复杂的coldfusion结构转换为查询以在我的页面中使用:
我有以下代码,我尝试了一些转换
<cfset l = "Pame=Program A&Co_Test=0&Programs2Product_ID=1
&Product_Type_ID=1&Clients2Product_ID=422&Program_ID=1
&S_Name=MASQW&Product_Template=BGTt&Name=MMMLD
">
<cfset q = queryNew("")>
<cfloop list="Pame,Co_Test,Programs2Product_ID,Product_Type_ID,
Clients2Product_ID,Program_ID,S_Name,Product_Template,Name" index="k">
<cfset queryAddColumn(q, "#k#", listToArray(listlast(l,"="),"&"))>
</cfloop>
<cfdump var="#q#">
Run Code Online (Sandbox Code Playgroud)
它转换为查询,但对于所有列,它只是添加最后一个vakue MMMLD
任何人都可以检查我在这里做错了什么
我为我的应用程序创建了一个搜索表单.我现在想要通过从productID,ProductName,ProductCostFrom,ProductCostTO一次从1个或多个输入中获取输入来搜索数据库.我正在使用以下查询进行搜索.如果我在输入中给出成本范围,它工作安静,但如果我只搜索"ProID"或"ProName"或两者,则会出现语法错误.
<cfquery name="myquery" datasource="cfdb2">
Select *
from ProEntry
where (
Procost BETWEEN #Form.Procost# AND #Form.ProCostTo#
)
OR (
Proid='#form.Proid#' OR
Proname='#form.Proname#'
)
</cfquery>
Run Code Online (Sandbox Code Playgroud) <cfhttp url = "https://api.elasticemail.com/mailer/send?username=myusername&api_key=myapi-key&from=#attributes.from#&from_name=#attributes.from#&to=#attributes.to#&subject=#attributes.subject#&body_html=#attributes.content#&reply_to=#attributes.replyto#"
method = "POST"
result="mailResult">
</cfhttp>
Run Code Online (Sandbox Code Playgroud)
我使用上述Web服务发送电子邮件.尝试发送包含HTML内容的大型电子邮件时,通过邮件不会收到任何内容.发送带有HTML内容的简单电子邮件(没有任何样式或背景颜色)时,它将正常工作.发送邮件时是否存在大小限制或任何其他条件?为什么没有发送电子邮件?
我有一个比Internet Explorer中的污垢慢但在Firefox中速度快的功能.我正在使用select*因为它正在使用表中的所有内容.我尝试将*输出并列出所有列,但随后它因为我使用两个表而中断,我很好奇是否有人可以帮我解决这个问题.(我正在使用MSSQL 2012)
<!--- Display Table for DataTables --->
<cffunction name="displayTable" access="public" returntype="query">
<cfset var processTable = ''>
<cfquery name="processTable">
SELECT *
FROM dbo.Dealer_Track_Work, dbo.Dealer_Track_Dealers
WHERE dbo.Dealer_Track_Work.dealerID = dbo.Dealer_Track_Dealers.id
</cfquery>
<cfreturn processTable>
</cffunction>
Run Code Online (Sandbox Code Playgroud)
我尝试调用两行中的所有列,如下所示:
<!--- Display Table for DataTables --->
<cffunction name="displayTable" access="public" returntype="query">
<cfset var processTable = ''>
<cfquery name="processTable">
SELECT id, dealerID, Date_Received, op_id, Date_Due, Date_Complete, Completed_Late, Closed_by, Rmks, Processing_Location, Item_Count, Name
FROM dbo.Dealer_Track_Work, dbo.Dealer_Track_Dealers
WHERE dbo.Dealer_Track_Work.dealerID = dbo.Dealer_Track_Dealers.id
</cfquery>
<cfreturn processTable>
</cffunction>
Run Code Online (Sandbox Code Playgroud) 什么是最好的方式做我所做的<cfquery>,即使在queryExecute
CFQUERY
<cfquery name="qry">
SELECT * FROM tbl_products
WHERE filed1 = 1
<cfif structKeyExists(URL, "test")>
AND filed2 = 2
</cfif>
ORDER BY id DESC
</cfquery>
Run Code Online (Sandbox Code Playgroud)
cfexecute
<cfscript>
sql = "
SELECT * FROM tbl_products
WHERE filed1 = 1
ORDER BY id DESC
";
if (structKeyExists(URL, "test")){
sql = "
SELECT * FROM tbl_products
WHERE filed1 = 1
AND filed2 = 2
ORDER BY id DESC
";
}
qry = queryExecute(
sql = sql
);
</cfscript> …Run Code Online (Sandbox Code Playgroud) 我的coldfusion网页位于D:驱动器中,需要在E:\ Photo\drive的网页上显示图像.我已经为位置E:\ Photo \映射了CF管理员的逻辑路径名称\ Photo.例如
<img src="\Photo\one.png" >
Run Code Online (Sandbox Code Playgroud)
但它不起作用.
请建议.
我是Linux(Ubuntu 16.04)的新手,正在尝试设置Lucee 5,Ubuntu,Tomcat和nginx.我觉得我接近它工作,但在我的浏览器中转到页面(sometestfile.cfm)时得到这个错误500.
HTTP状态500 - 无法创建目录/ var/lib/tomcat7/webapps/ROOT/WEB-INF/lucee
有关如何解决此错误的任何想法?
javax.servlet.ServletException: can't create directory /var/lib/tomcat7/webapps/ROOT/WEB-INF/lucee
lucee.runtime.engine.CFMLEngineImpl.getConfigDirectory(CFMLEngineImpl.java:650)
lucee.runtime.engine.CFMLEngineImpl.loadJSPFactory(CFMLEngineImpl.java:584)
lucee.runtime.engine.CFMLEngineImpl.addServletConfig(CFMLEngineImpl.java:537)
lucee.loader.engine.CFMLEngineWrapper.addServletConfig(CFMLEngineWrapper.java:89)
lucee.loader.engine.CFMLEngineFactory.getInstance(CFMLEngineFactory.java:207)
lucee.loader.servlet.CFMLServlet.init(CFMLServlet.java:44)
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
mod_cfml.core.invoke(core.java:247)
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956)
org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:683)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:436)
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078)
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625)
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
java.lang.Thread.run(Thread.java:745)
Run Code Online (Sandbox Code Playgroud) 我希望在上一学年结束后每次增加学年.例如,我当前的代码如下所示:
WHERE schooldt BETWEEN '07/01/2016' AND '06/30/2017'
Run Code Online (Sandbox Code Playgroud)
因此,一旦学年结束,06/30/2017我想自动设置新的开始日期和新的结束日期.我在考虑在冷聚变中使用dateAdd().有没有其他方法可以做到这一点,最有效的是什么?
提前致谢.
我希望使用coldfusion从字符串中删除javascript注释.我目前正在使用reReplace(string, "(\/\*.*\*\/)|\s(\/\/.{1,}[\r\n])", "", "all").
这是一个测试字符串:
<script type="text/javascript">
// comment
var a=1; // another comment
/* try{if (...)}; */
var b=2;
</script>
src="//domain.com"
Run Code Online (Sandbox Code Playgroud)
该预期的结果是(和我所得到的使用replace()在javacript):
<script type="text/javascript">
var a=1;
var b=2;
</script>
src="//domain.com"
Run Code Online (Sandbox Code Playgroud)
实际CFML结果:
<script type="text/javascript">
src="//domain.com"
Run Code Online (Sandbox Code Playgroud)
再次,它在javascript中工作正常.
如何使用CFML?
更新1,我的应用程序中更具体的代码.它基本上是app.cfc的OnRequest()函数中的缩小器.
用逗号替换逗号+\r \n
<!--- Define arguments. --->
<cfargument
name="TargetPage"
type="string"
required="true"
/>
<cfheader name="content-type" value="text/html; charset=utf-8" />
<cfheader name="X-UA-Compatible" value="IE=edge" />
<cfheader …Run Code Online (Sandbox Code Playgroud)