Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 184
  • Last Modified:

Coldfusion multiple forms in one page

Hi friends,
I have created a form with 3 fileds empno, empname, sal and a submit  button.
empname and sal fields are read only. one can only enter empno and click submit.

When I enter existing empno in the text field and click on SUBMIT, the query should retrieve corresponding values from table and display in the remaining form fileds..

my table has 3 columns. empno, empname, sal.

until retrieval part, I have done(below code), but after retrieving how do I display values in the remaining fileds..
<cfif isdefined("form.view")>
   <cfquery name="bbb" datasource="site4">
   select * from emp where empno = #form.empno2#
   </cfquery>
 
  
   <cfoutput query="bbb"> #empname# </cfoutput>
   <cfabort>
   
   <cfelse>
     <form id="form2" name="form2" method="post" action="test1.cfm">
       <p>
         <label>Emp No
           <input type="text" name="empno2" id="empno2" />
         </label>
       </p>
       <p>
         <label>Emp Name
           <input name="empname2" type="text" id="empname2" readonly="readonly" />
         </label>
       </p>
       <p>
         <label>Salary
           <input name="sal2" type="text" id="sal2" readonly="readonly" />
         </label>
       </p>
       <p>
         <label>
           <input type="submit" name="view" id="view" value="Submit" />
         </label>
       </p>
</form>
     </cfif>

Open in new window

0
Sri10
Asked:
Sri10
1 Solution
 
erikTsomikSystem Architect, CF programmer Commented:
you may wanto consider using AJAX for this, so once you enter the value into the first field it will prepopulate the values into the rest
0
 
_agx_Commented:
If you prefer submitting the form, you could use cfparam to create an empty query.  So it will always exist, whether the form was submitted or not.  Then use it to populate the fields. Though you should also consider using ajax.

Note, replace the columns "EmpNo, EmpName, Sal" with your actual column names.
<cfif isdefined("form.view")>
   <!--- avoid using SELECT * --->
   <cfquery name="bbb" datasource="site4">
	   SELECT	EmpNo, EmpName, Sal
	   FROM		emp 
	   <!--- use cfqueryparam for all parameters --->
	   WHERE	empno = #form.empno2#
   </cfquery>
</cfif> 
 
<!--- create an empty query if the form was not submitted --->
<cfparam name="variables.bbb" default="#QueryNew('empName,empNo,sal')#">
 
<cfoutput>
     <form id="form2" name="form2" method="post" action="test1.cfm">
       <p>
         <label>Emp No
           <input type="text" name="empno2" id="empno2" value="#bbb.empNo#" />
         </label>
       </p>
       <p>
         <label>Emp Name
           <input name="empname2" type="text" id="empname2" value="#bbb.empName#" readonly="readonly" />
         </label>
       </p>
       <p>
         <label>Salary
           <input name="sal2" type="text" id="sal2" value="#bbb.sal#" readonly="readonly" />
         </label>
       </p>
       <p>
         <label>
           <input type="submit" name="view" id="view" value="Submit" />
         </label>
       </p>
	</form>
</cfoutput>	

Open in new window

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Get 10% Off Your First Squarespace Website

Ready to showcase your work, publish content or promote your business online? With Squarespace’s award-winning templates and 24/7 customer service, getting started is simple. Head to Squarespace.com and use offer code ‘EXPERTS’ to get 10% off your first purchase.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now