問:我有一個CFM叫我CFC在CFFORM行動路線: ColdFusion的CFC返回的記錄數
在我的CFC,我有輸出=「假」。我需要將記錄計數發送回我的CFM。當我運行我的CFM並輸入表單信息時,我的查詢成功運行,但它不會回到我的CFM中,因此我可以顯示正確的消息。我只用我的記錄數來得到CFC頁面。有什麼建議麼?謝謝!
問:我有一個CFM叫我CFC在CFFORM行動路線: ColdFusion的CFC返回的記錄數
在我的CFC,我有輸出=「假」。我需要將記錄計數發送回我的CFM。當我運行我的CFM並輸入表單信息時,我的查詢成功運行,但它不會回到我的CFM中,因此我可以顯示正確的消息。我只用我的記錄數來得到CFC頁面。有什麼建議麼?謝謝!
既然沒有代碼,做了一些假設,在這裏你是如何做的事情....
不要指向CFC,指向一個CFM頁中的<cfform>
。 (如果省略的動作,它會指向回自己..我喜歡自我參照的表單頁面)
在你的CFC,從查詢返回結果的結構:
<cfquery datasource="#ds#" name="myQuery" result="myResult">
INSERT INTO myTable .....
</cfquery>
然後要麼返回這整個結構,或者只是myResult.recordCount
:
<cfreturn myResult.recordCount>
然後在你的頁面CFM,你訪問它,像這樣(假設你使用<cfscript>
;如果你正在做類似的基於標記):
recordsAdded = createObject('component','myFolder.myCFC').insertMethod(form);
createObject方法本身不會返回組件的一個實例,所以insertMethod函數將不可用。你需要做createObject('component','myFolder.myCFC')。init()。insertMethod(form);其中init方法返回「this」 – bittersweetryan
要添加提示,如果您使用的是SQL Server 2k5 +,則可以使用OUTPUT子句實際返回所有插入的數據,包括密鑰。然後,如果需要,可以返回查詢結果以及myQuery.recordCount。 –
@bittersweetryan事實上,除非需要運行額外的構造函數代碼(並且在CF9中,構造函數是隱式的,不需要顯式執行),否則init()不是必需的。 –
我改變了CFFORM行這樣的: ....我的形式其餘
然後添加這些行,看看是否提交表單,哪些動作是:
<!--- create object for cfc --->
但現在,我的查詢不運行....
你可以張貼一些代碼? –
現在,這是我的
Mia
這是我的
Mia