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

ここで何が起こっているのですか?インクルードされたファイルが見つかりましたが、これを引き起こしている 2 つのバージョンに違いはありますか?

4

2 に答える 2

3

確実に含まれていますか?試す:

include "../SQL/contact.sql.cfc";
form.phone = unFormatPhone(form.phone);
contactID = InsertContact(form);
于 2012-08-11T12:43:24.927 に答える
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 に答える