Solved

<cvdiv bind="url........." and <cfinput type checkbox problem

Posted on 2009-04-02
12
563 Views
Last Modified: 2013-12-24
Hello experts
I use this code:
<cfparam name="Url.S_Leasing" default="">
<cfdiv bind="url:../resultscheck.cfm?S_Leasing={S_Leasing}" ID="theDiv" style="height:20px; width:80px;"/>
<cfform>
<cfif  url.S_Leasing EQ 1 > 
    <cfset checkleasing = 'yes'>
    <cfelse>
     <cfset checkleasing = 'no'>
     </cfif>
    <cfinput name="S_Leasing" id="S_Leasing" type="checkbox"   checked="#checkleasing#" value="1" />
</cfform>
and using the cfdebug i see that when the checkbox is not checked value 1 is passed to the url:
Coldfusion Ajax Logger:
info:http: Replaced markup for element: theDiv

info:http: HTTP GET ../resultscheck.cfm?S_Leasing=1&_cf_containerId=theDiv&_cf_nodebug=true&_cf_nocache=true&_cf_clientid=8E407863AA052BD8A1E25ADF06B0023F&_cf_rc=0

info:http: Replacing markup for element: theDiv from URL ../resultscheck.cfm?S_Leasing=1 with params _cf_containerId=theDiv

info:LogReader: LogReader initialized

info:global: Logger initialized
Any help?
0
Comment
Question by:Panos
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 8
  • 4
12 Comments
 
LVL 27

Expert Comment

by:azadisaryev
ID: 24051310
by default, allbindings are bound to the VALUE attribute of the element. since the value of VALUE attribute of your checkbox is 1, that's what the binding returns, disregarding if the checkbox is checked or not.

try this:
<cfdiv bind="url:../resultscheck.cfm?S_Leasing={S_Leasing.selected}" ID="theDiv" style="height:20px; width:80px;"/>

mind you, that will likely request the url with S_Leasing=true or S_Leasing=false url parameter - so make sure your resultscheck.cfm can react properly to true/false as url.S_Leasing value...

Azadi
0
 
LVL 2

Author Comment

by:Panos
ID: 24051800
Hi azadi
Here  is a part of my resultcheck.cfm page.
Can you help me?
<cfquery name="WADAdboartikel" datasource="#request.dsn#">
SELECT  *
FROM artikel
WHERE (0=0
<cfif isdefined("Url.S_Leasing") >
<cfif Url.S_Leasing NEQ "">     
  AND  Leasing = <cfqueryparam value="#URL.S_Leasing#"  cfsqltype="cf_sql_tinyint">
       </cfif>
       </cfif>
   )
</cfquery>
 
<cfoutput>#WADAdboartikel.RecordCount#</cfoutput>
0
 
LVL 2

Author Comment

by:Panos
ID: 24052126
Something else.
Is there another way to get the recortcount witout submutting the form?
0
Supports up to 4K resolution!

The VS192 2-Port 4K DisplayPort Splitter is perfect for anyone who needs to send one source of DisplayPort high definition video to two or four DisplayPort displays. The VS192 can split and also expand DisplayPort audio/video signal on two or four DisplayPort monitors.

 
LVL 27

Expert Comment

by:azadisaryev
ID: 24056200
oops... the checkbox's attribute to be used in the binding should be .checked, not .selected...

here's the full working code:

<!--- form page --->
<cfparam name="Url.S_Leasing" default="0"><!--- default it to 0 instead of empty string --->
<cfdiv bind="url:../resultscheck.cfm?S_Leasing={S_Leasing.checked}" ID="theDiv" style="height:20px; width:80px;"/>
<cfform>
    <cfinput name="S_Leasing" id="S_Leasing" type="checkbox" checked="#yesnoformat(URL.S_Leasing)#" value="1" />
</cfform>

<!--- resutscheck.cfm --->
<cfparam name="url.S_Leasing" default="0"><!--- cfparam this on this page, too! --->
<cfquery name="WADAdboartikel" datasource="#request.dsn#">
SELECT  COUNT(*) AS ttlcount
FROM artikel
WHERE Leasing = <cfqueryparam value="#val(URL.S_Leasing)#"  cfsqltype="cf_sql_tinyint">
</cfquery>
<cfoutput>#WADAdboartikel.ttlcount#</cfoutput>

Azadi
0
 
LVL 27

Expert Comment

by:azadisaryev
ID: 24056207
as for getting the recordcount without submitting the form:
yes, there are multiple ways to do it, and i think you know all of them. at least you used most of these ways in the other things you are doing and posting questions about :)

js proxy to a cfc and binding directly to a cfc which returns the recordcount are 2 of these ways.

if i am misunderstanding what you mean by 'another way to get the recortcount witout submutting the form' - please clarify.

Azadi
0
 
LVL 2

Author Comment

by:Panos
ID: 24057444
Hi azadi.
I'm asking if there is another way because i don't know which of these function is  faster.
Now for the solution you posted:
As is see it is passing true and false in url.
In database the values are 0 and 1.
How can i handle this in the resultcheck page.
0
 
LVL 2

Author Comment

by:Panos
ID: 24057494
Is this OK?
<cfparam name="url.S_Leasing" default="0">
<cfif Url.S_Leasing  EQ true>
  <cfset S_Leasing = 1 >
  <cfelse>
  <cfset S_Leasing = 0 >
  </cfif>

......
<cfif S_Leasing EQ 1 >     
  AND  Leasing = <cfqueryparam value="1"  cfsqltype="cf_sql_tinyint">
       </cfif>

In resultcheckpage
0
 
LVL 2

Author Comment

by:Panos
ID: 24057502
Notice that if the value is 0 in database i want all the results (0 and 1)
0
 
LVL 27

Accepted Solution

by:
azadisaryev earned 500 total points
ID: 24057737
you mean it did not work as it is?
it worked fine with passing 'true' or 'false' value in the url... my db is mysql and the field type is tinyint as well...

oh... oooops.... i have no idea how that val() function got in there... the WHERE clause in your query should just be:

WHERE Leasing = <cfqueryparam value="#URL.S_Leasing#"  cfsqltype="cf_sql_tinyint">

without val() in the value...

sorry! :)

Azadi
0
 
LVL 2

Author Comment

by:Panos
ID: 24057865
Ok azadi it is working now
0
 
LVL 2

Author Comment

by:Panos
ID: 24057869
I will come back with a question about binding values from a checkboxgroup
0
 
LVL 2

Author Closing Comment

by:Panos
ID: 31565844
Thank you very much for your help
regards
Panos
0

Featured Post

Will your db performance match your db growth?

In Percona’s white paper “Performance at Scale: Keeping Your Database on Its Toes,” we take a high-level approach to what you need to think about when planning for database scalability.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This is a guide to setting up a new WHM/cPanel Server to be used for web hosting accounts. It is intended for web hosting company administrators and dedicated server owners. For under $99 per month (considering normal rate of Big Data Cetnters like …
Meet the world's only “Transparent Cloud™” from Superb Internet Corporation. Now, you can experience firsthand a cloud platform that consistently outperforms Amazon Web Services (AWS), IBM’s Softlayer, and Microsoft’s Azure when it comes to CPU and …
In this video, viewers will be given step by step instructions on adjusting mouse, pointer and cursor visibility in Microsoft Windows 10. The video seeks to educate those who are struggling with the new Windows 10 Graphical User Interface. Change Cu…
In this video you will find out how to export Office 365 mailboxes using the built in eDiscovery tool. Bear in mind that although this method might be useful in some cases, using PST files as Office 365 backup is troublesome in a long run (more on t…

617 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question