Skip to main content
Inspiring
October 17, 2008
Question

html form data to cfc

  • October 17, 2008
  • 3 replies
  • 1250 views
I've crawled inside and out of the documentation for how to pass html form data to a cfc and display the result (see http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=buildingComponents_15.html) but -- possibly due to "If the CFC returns a result using the cfreturn tag, ColdFusion converts the text to HTML edit format, puts it in a WDDX packet, and includes the packet in the HTML that it returns to the client." -- I cannot find any way to display the results of passing info either by form or URL ( all that happens on form submit is this url http://70.XX.XX.XX:8500/olo/cfc/SearchOwners.cfc?method=getEmp in the address bar and a completely empty screen).

My .CFM FIle:
<h2>Find People</h2>
<form action="../cfc/SearchOwners.cfc?method=getEmp" method="post">
<p>Enter employee's last Name:</p>
<input type="Text" name="lastName">
<input type="Hidden" name="method" value="getEmp">
<input type="Submit" title="Submit Query"><br>
</form>


My .CFC File
<cfcomponent>
<cffunction name="getEmp" access="remote">
<cfargument name="lastName" required="true">
<cfset var empQuery="">
<cfquery name="empQuery" datasource="OLO">
SELECT *
FROM owners
WHERE family_name = '#arguments.lastName#'
</cfquery>
<cfoutput>Results filtered by #arguments.lastName#:</cfoutput><br>
<cfdump var=#empQuery#>
</cffunction>
</cfcomponent>

Yet this invoke cfm works no problem returning results
<body>
<!--- Invoke Component. --->
<cfinvoke component="olo.cfc.SearchOwners" method="getEmp" returnvariable="qResult">
<cfinvokeargument name="lastName" value="name"/>
</cfinvoke>
</body>

I SERIOUSLY will appreciate anyone who can help . . . . . .
This topic has been closed for replies.

3 replies

Inspiring
October 17, 2008
You need to send the form to cfm template. The one you have invoke argument. Invoke argument sends the data to cfc, not the form.

Syed
Inspiring
October 17, 2008
Hi,
You should be able to call a cfc function directly from a web browser.

Save the attached sample as "remote_library.cfc", and open it in the browser as "remote_library.cfc?method=form" to see how it works.

Now find out what's different with your function (start with finding out if the datasource is there and working)

cheers,
fober
=============================================

<cfcomponent>
<cffunction access="remote" name="say_hi" output="Yes">
<cfargument name="fname" default="">
<cfargument name="lname" default="">
<cfargument name="phone" default="">
Hi #fname#,<br>
This is a test for #fname# #lname# with the phone number #phone#.<br>
<br>
<cfdump var="#url#">
</cffunction>

<cffunction access="remote" name="form" output="Yes">
<h1>TEST</h1>
<form action="remote_library.cfc?method=say_hi" method="post">
<input type="Text" name="fname" value="Al">
<input type="Text" name="lname" value="Gore">
<input type="Text" name="phone" value="123 456-7890">
<input type="Submit" name="btn" value="find">
</form>
</cffunction>

</cfcomponent>
Inspiring
October 17, 2008
Don't submit to the cfc. Submit to a cfm page that calls the cfc.