3

帮助!!

只是将站点从一台服务器迁移到另一台服务器,coldfusion 版本正在从 cf8 更改为 cf9 [linux/centos]

这段代码以前可以工作:

cfinclude('../SQL/contact.sql.cfc');
form.phone = unFormatPhone(form.phone);
contactID = InsertContact(form);

在包含的文件中是:

<cfcomponent output="false" >
<!--- -------------------------------- insert -------------------------------- --->
<cffunction name="InsertContact" returntype="numeric" output="false" access="public" >

现在浏览页面时出现错误:

Variable INSERTCONTACT is undefined.


The error occurred in /var/www/vhosts/xxxxxx.com/httpdocs/Assets/XHTML/buy-my-car.cfm: line 54
Called from /var/www/vhosts/newride.ca/httpdocs/Application.cfc: line 232
Called from /var/www/vhosts/newride.ca/httpdocs/Application.cfc: line 230
Called from /var/www/vhosts/newride.ca/httpdocs/Application.cfc: line 162
52 :            cfinclude('../SQL/contact.sql.cfc');
53 :            form.phone = unFormatPhone(form.phone);
54 :            contactID = InsertContact(form);
55 :            
56 :            //insert vehicle with app id

这里发生了什么?正在找到包含的文件,导致此问题的两个版本之间是否存在一些差异?

4

2 回答 2

3

好吧,我首先要说的是我只使用过 CF9,所以我无法评论你过去在 CF8 中能够做什么。但是,在 CF9 中,我很确定你不能那样使用 CFC。与您正在做的最接近的事情是使用<cfinvoke>. 请参阅此处:http ://help.adobe.com/en_US/ColdFusion/9.0/Developing/WSc3ff6d0ea77859461172e0811cbec22c24-7db3.html

但是,还要考虑将 cfc 实例化为一个对象,然后对该对象调用方法。我喜欢这样做,因为它让我想起了其他语言,例如 Java 和 C#。

于 2012-08-11T04:57:50.667 回答
3

你确定它被包括在内吗?尝试:

include "../SQL/contact.sql.cfc";
form.phone = unFormatPhone(form.phone);
contactID = InsertContact(form);
于 2012-08-11T12:43:24.927 回答