473,513 Members | 2,399 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

AJAX , check for changes and do refresh!!

155 New Member
i got this php file 'check.php' that checks for changes ,and showing a counter for posts !!

Expand|Select|Wrap|Line Numbers
  1. $show_data="SELECT * FROM bidding_main WHERE bid_id='$bid_id' ";
  2. $show_data_query=mysql_query($show_data);
  3. $num_show_data=mysql_num_rows($show_data_query);
  4.         $sqlno="SELECT * FROM bidding_details WHERE bid_id=$bid_id ";
  5. $queryno=mysql_query($sqlno);
  6.         echo "<table width='517' border='0' cellspacing='0' cellpadding='0'>";
  7.         echo "    <tr>";
  8.          $rem=$max_bid-$numno;
  9.                         if($rem<=0)
  10.                         {
  11.                         echo "0";
  12.                         }
  13.                         else
  14.                         {
  15.                         echo "<td bgcolor='#FFFFFF' align='center'><font color='red'><b>הצעות לסגירה: $rem </b></font></td>";
  16.                         }"</td>";
  17.         echo "</tr>";
  18.         echo "</table>";
now, i cannot figure it out in ajax how to point the request to check if something as changed when the php file is executed?

how do i get the ajax to check that something as changed?

here is my starting ajax file

Expand|Select|Wrap|Line Numbers
  1. function loadXMLDoc(url, callBack) {
  2.     if (window.XMLHttpRequest) {
  3.         req = new XMLHttpRequest();
  4.         req.onreadystatechange = callBack;
  5.         req.open("POST", url, true);
  6.         req.send(null);
  7.     } else if (window.ActiveXObject) {
  8.         req = new ActiveXObject("Microsoft.XMLHTTP");
  9.         if (req) {
  10.             req.onreadystatechange = callBack;
  11.             req.open("POST", url, true);
  12.             req.send();
  13.         }
  14.     }
  15. }
  16.  
  17.  
  18.  
  19.  
  20.  
  21. function RefreshEngine( now)
  22. {  
  23.      var url="check.php"
  24.      if (now) url+='';
  25.  
  26.      loadXMLDoc(url, RefreshResult;
  27.  
  28. }
  29.  
  30.  
  31.  
  32. function RefreshResult ()
  33.  
  34. {
  35.  
  36.     //here im goint to have the second result
  37.  
  38. }
please help me out with this ,it's a week that im serching for result for this ,i tryed million of combinations ,and no success !!

please help or point me to the right direction!!

thanx
Nov 16 '08 #1
12 4351
acoder
16,027 Recognized Expert Moderator MVP
Just compare the responseText with wherever the content is output, or change your PHP code to output something else when (no) changes have been made.
Nov 17 '08 #2
canabatz
155 New Member
how can i compare the response ,this is my problem ,i don't know how the pass the value from the php file ,how to get the right value to the ajax and compare the changes?

need little more help on that!!

thanx
Nov 18 '08 #3
acoder
16,027 Recognized Expert Moderator MVP
The output from the PHP file will be in req.responseText as a string. You can simply compare against whatever value you've already set:
Expand|Select|Wrap|Line Numbers
  1. if (req.responseText == "...") {
Nov 18 '08 #4
canabatz
155 New Member
ok , im realy confused by this ajax and php thing ,i wan to make it short ,and i hope you can explain for me better!!

i got for example those two files

ajax.php

Expand|Select|Wrap|Line Numbers
  1. <?php 
  2. echo "10";
  3. ?>
and ajax.js

Expand|Select|Wrap|Line Numbers
  1. function MakeRequest()
  2. {
  3.   var xmlHttp = getXMLHttp();
  4.  
  5.   xmlHttp.onreadystatechange = function()
  6.   {
  7.     if(xmlHttp.readyState == 4)
  8.     {
  9.       HandleResponse(xmlHttp.responseText);
  10.     }
  11.   }
  12.  
  13.   xmlHttp.open("GET", "ajax.php", true); 
  14.   xmlHttp.send(null);
  15. }
  16.  
  17. function HandleResponse(response)
  18. {
  19.   document.getElementById('ResponseDiv').innerHTML = response;
  20. }
  21.  
my quastion is , after i excute this script and the response is showing me "10" ,if after i change the php file to "11" or any thing else ,does the ajax will execute another function() if it sees that there is a change in the php file?

this is how i want it to be :

ajax is checking a php file for changes ,and if is is changed execute another function!!

thanx
Nov 18 '08 #5
acoder
16,027 Recognized Expert Moderator MVP
In HandleResponse(), document.getElementById('ResponseDiv').innerHTML contains the old value and response contains the new value, so compare them:
Expand|Select|Wrap|Line Numbers
  1. if (document.getElementById('ResponseDiv').innerHTML == response) {
  2.     // value hasn't changed...
  3. } else {
  4.     // value has changed...
  5. }
Nov 18 '08 #6
canabatz
155 New Member
is this correct?

Expand|Select|Wrap|Line Numbers
  1. function MakeRequest()
  2. {
  3.   var xmlHttp = getXMLHttp();
  4.  
  5.   xmlHttp.onreadystatechange = function()
  6.   {
  7.     if(xmlHttp.readyState == 4)
  8.     {
  9.       HandleResponse(xmlHttp.responseText);
  10.     }
  11.   }
  12.  
  13.   xmlHttp.open("GET", "ajax.php", true); 
  14.   xmlHttp.send(null);
  15.  
  16.   setTimeout('MakeRequest()', 4000);
  17. }
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24. function HandleResponse(response)
  25. {
  26.  
  27.   if (document.getElementById('ResponseDiv').innerHTML == response) 
  28.   {
  29.  
  30.    alert ("something changed");
  31.  
  32.   } 
  33.  
  34.    else 
  35.  
  36.   {
  37.  
  38.    alert ("nothing changed");
  39.  
  40.   }
  41.  
  42.  
  43. }
Nov 18 '08 #7
acoder
16,027 Recognized Expert Moderator MVP
It would be except that the Response Div must be set first in another request or during page load.
Nov 18 '08 #8
canabatz
155 New Member
can you please please correct my wrongs, im geting crazy !!
Nov 18 '08 #9
acoder
16,027 Recognized Expert Moderator MVP
What's the ResponseDiv div initially set to?
Nov 18 '08 #10
canabatz
155 New Member
it's reading this php file


i just want it to check if the php file as changed

<?

echo "10";

?>


i want to be able to change it by hend to 11 and it will alert me that something changed!
Nov 18 '08 #11
canabatz
155 New Member
this one is working for me heheheheeeh

Expand|Select|Wrap|Line Numbers
  1. function MakeRequest()
  2. {
  3.   var xmlHttp = getXMLHttp();
  4.  
  5.   xmlHttp.onreadystatechange = function()
  6.   {
  7.     if(xmlHttp.readyState == 4)
  8.     {
  9.       HandleResponse(xmlHttp.responseText);
  10.     }
  11.   }
  12.  
  13.   xmlHttp.open("GET", "ajax.php", true); 
  14.   xmlHttp.send(null);
  15.   setTimeout('MakeRequest()', 4000);
  16. }
  17.  
  18.  
  19.  
  20. function HandleResponse(response)
  21. {
  22.   if (document.getElementById('ResponseDiv').innerHTML == response)
  23.     {
  24.  
  25.  
  26.  
  27.     }
  28.  
  29. else if (document.getElementById('ResponseDiv').innerHTML = response)
  30.  
  31.     {
  32.  
  33.  
  34. alert("something as changed")
  35.     }
  36.  
  37. }
Nov 18 '08 #12
acoder
16,027 Recognized Expert Moderator MVP
It works, but probably not in the way you intended. The line
Expand|Select|Wrap|Line Numbers
  1. else if (document.getElementById('ResponseDiv').innerHTML = response)
will always be true because you always set the innerHTML and the result is true.

A more meaningful version would be something like:
Expand|Select|Wrap|Line Numbers
  1. if (document.getElementById('ResponseDiv').innerHTML != response)
  2.     {
  3.     document.getElementById('ResponseDiv').innerHTML = response;
  4.     alert("something as changed")
  5.     }
Nov 19 '08 #13

Sign in to post your reply or Sign up for a free account.

Similar topics

3
3868
by: | last post by:
Hello, I have a ListView control in Details view. When an item is un-checked, I want to change the ForeColor. The only way I have found to do this is to loop through all the items of the...
3
2893
by: Beshoo | last post by:
hey gaiz plz I want to cerate log in system in ajax i do it but i have one problem AFTER I start thes session then press refresh key the session gone !!! in other words , after the user type hid...
1
1334
by: lauralaura | last post by:
Hallo ! is there in Java a clever method, which checks the changes in a database every 30 sec and after that it shows these changes? thanks alot.. Laura
3
5697
by: hockeyham | last post by:
Is this possible... :)~ -------------------------------------------------------------------------------- Hello... Please see this post HTML Question The answer was to try AJAX... to be...
0
1246
by: Gimble | last post by:
Does anyone know of a way to detect when an AJAX call has finished updating a page in the webbrowser control in a vb.net program? For example, if I click "next" on a page and that causes a table...
3
5539
by: burrashiva | last post by:
:( ::) Hello there, I recently started Web Designing with PHP, Javascript and AJAX. I am facing a problem which I will try to explain: If I am successful in conveying the problem to you...
7
2422
by: raknin | last post by:
I'm using AJAX on my website, but internet explorer does not seem to actually be refreshing the data I retrieve via AJAX when I refresh the page. For example, I have a button that when pressed uses...
4
5273
kelleyvanevert
by: kelleyvanevert | last post by:
Hello everyone, This question is often asked, and I know there are lots and lots of answers that I could be using, but I just want a clear good answer. I am making a website (for playing a game...
2
1445
by: Chris | last post by:
I'm developing an ASP.NET Page that processes some files, does some things to them. I'd like to have a gridview that displays each file, and it's status, if it's done processing, still processing,...
0
7545
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
1
7111
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
7539
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
1
5095
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...
0
4751
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and...
0
3240
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The...
0
3228
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
807
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
0
461
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.