Solved

Coldfusion Ajax timer probelms

Posted on 2009-05-20
6
686 Views
Last Modified: 2013-12-24
So i needed to be able to check an inbox, and found this post:
http://www.experts-exchange.com/Software/Server_Software/Web_Servers/ColdFusion/Q_24346330.html?sfQueryTermInfo=1+10+8+ajax+coldfus+timer

My problem is that in firefox nothing happens & IE throws an error - ive since found out, im getting "Error thrown and not caught" at line 798 within cfajax.js

Current result can be seen at http://www.brandirectorv2.com/test.cfm
<!--- test.cfm --->

<cfajaxproxy cfc="includes.inbox" jsclassname="inboxProxy">

<head>

<script type="text/javascript">

var p = new inboxProxy();

var checkInbox = function(userid){

 p.setCallbackHandler(updateInbox);

 p.setErrorHandler(pErr);

 p.checkUserInbox(userid);

};

var updateInbox = function(result){

 document.getElementById("messagecount").innerHTML = " ("+result+")";

};

var pErr = function(code, message){

 alert("Error! Could not check your inbox...\nError Code: "+code+"\nError Message: "+message);

};

var initInboxCheck = function(userid){

 checkInbox(userid);

 setInterval(checkInbox(userid), 5000);

};

</script>

</head>

<cfset user_id="1">

<body onload="initInboxCheck(<cfoutput>#user_id#</cfoutput>);">

<div id="header"><a href="viewinbox.cfm">INBOX<span id="messagecount"></span></a></div>

</body>

</html>

 

<!--- includes/inbox.cfc --->

<component displayname="inbox" output="no">

<cffunction name="checkUserInbox" access="remote" returntype="numeric" output="no">

 <cfargument name="userID" type="numeric" required="yes">

 <cfset var queryInbox = "">

 <cfquery name="queryInbox" datasource="#request.dsn#" username="#request.uid#" password="#request.pwd#">

 SELECT * FROM tbl_messages WHERE msg_to = <cfqueryparam cfsqltype="cf_sql_integer" value="#arguments.userID#">

 </cfquery>

 <cfreturn queryInbox.recordcount />

</cffunction>

</component>

Open in new window

0
Comment
Question by:j-tanner
  • 3
  • 3
6 Comments
 
LVL 27

Accepted Solution

by:
azadisaryev earned 250 total points
ID: 24437833
the correct tag is <CFcomponent> - not <component>...

Azadi
0
 
LVL 27

Assisted Solution

by:azadisaryev
azadisaryev earned 250 total points
ID: 24437841
yes, i see i had that typo in my code in the other question... sorry! my bad!

Azadi
0
 
LVL 27

Assisted Solution

by:azadisaryev
azadisaryev earned 250 total points
ID: 24437852
i have posted an update in the other question, so hopefully no one else will fall into this... sorry you had to be the one!

Azadi
0
Comprehensive Backup Solutions for Microsoft

Acronis protects the complete Microsoft technology stack: Windows Server, Windows PC, laptop and Surface data; Microsoft business applications; Microsoft Hyper-V; Azure VMs; Microsoft Windows Server 2016; Microsoft Exchange 2016 and SQL Server 2016.

 

Author Comment

by:j-tanner
ID: 24438486
Hi,

Thankyou for the reply, that has stopped the cfajax error :), however the script is still failing...
Firebug shows:

useless setInterval call (missing quotes around argument?)
                                   setInterval(checkInbox(userid), 5000);

I researched setInterval & many say that whilst you can call a function, you cant pass a variable? if i put speech marks around it, it still stops & firebug says "userid is not defined"

Any thoughts?
0
 

Author Comment

by:j-tanner
ID: 24438568
Actually, i solved it :D... you may want to update code in he other post as well...

i replaced:

setInterval(checkInbox(userid), 5000);

with:

setInterval(function(){checkInbox(userid)}, 5000);
0
 

Author Closing Comment

by:j-tanner
ID: 31583601
Thankyou for your help
0

Featured Post

3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
Mongodb hierarchy 2 48
Coldfusion 2016 setup problem with MS Access (advice needed). 11 127
Moving web servers into a DMZ? 3 49
Problem to go to Web page 2 98
This is an updated version of a post made on my blog over 3 years ago. It is unfortunately, still very relevant as we continue to see both SQLi (SQL injection) and XSS (cross site scripting) attacks hitting some of the most recognizable website and …
Introduction Got endorsements from your clients?  Great!  There is almost nothing better than word-of-mouth advertising.  But how can you do that on the internet?  Sure you can make a page for endorsement quotations and list them all, but who is …
Both in life and business – not all partnerships are created equal. As the demand for cloud services increases, so do the number of self-proclaimed cloud partners. Asking the right questions up front in the partnership, will enable both parties …
As a trusted technology advisor to your customers you are likely getting the daily question of, ‘should I put this in the cloud?’ As customer demands for cloud services increases, companies will see a shift from traditional buying patterns to new…

920 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

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now