Sunday, 15 July 2012

php - Updating page using AJAX -



php - Updating page using AJAX -

on main page have page called logs.php have set update every 4 seconds using jquery/ajax. update details of .xml file stored locally.

file_put_contents("../../scripts/xml/logs.xml", $dom) or print_r(error_get_last());

here jquery:-

$(function(){ setinterval(function(){ $.ajax({ url:'scripts/php/log.controller.php', success:function(data){ if(data == "scripts/php/status.controller.php"){ }else{ alert(data); } } }); },4000); });

when alert(data); shows me changes of updated xml file:

<?xml version="1.0"?> <loglist resultcount="24"><log id="0"><messagedate>20/06/2014 10:34:48</messagedate><car></car><stat>ping</stat><ping></ping><job>operator</job><operator></operator><jobref></jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="1"><messagedate>20/06/2014 10:34:47</messagedate><car></car><stat>ping</stat><ping></ping><job>operator</job><operator></operator><jobref></jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="2"><messagedate>20/06/2014 10:34:35</messagedate><car>6</car><stat>quit</stat><ping></ping><job>operator</job><operator></operator><jobref></jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="3"><messagedate>20/06/2014 10:34:32</messagedate><car>8</car><stat>ping</stat><ping></ping><job>operator</job><operator></operator><jobref></jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="4"><messagedate>20/06/2014 10:34:31</messagedate><car>10</car><stat>ping</stat><ping></ping><job>operator</job><operator></operator><jobref></jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="5"><messagedate>20/06/2014 10:34:30</messagedate><car>3</car><stat>ping</stat><ping></ping><job>operator</job><operator></operator><jobref></jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="6"><messagedate>20/06/2014 10:34:28</messagedate><car>2</car><stat>ping</stat><ping></ping><job>operator</job><operator></operator><jobref></jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="7"><messagedate>20/06/2014 10:24:27</messagedate><car></car><stat>ping</stat><ping></ping><job>operator</job><operator></operator><jobref></jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="8"><messagedate>20/06/2014 10:15:16</messagedate><car>10</car><stat>quit</stat><ping></ping><job>operator</job><operator></operator><jobref></jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="9"><messagedate>20/06/2014 10:14:01</messagedate><car>4</car><stat>quit</stat><ping></ping><job>operator</job><operator></operator><jobref></jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="10"><messagedate>19/06/2014 14:07:35</messagedate><car></car><stat>ping</stat><ping></ping><job>operator</job><operator></operator><jobref></jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="11"><messagedate>19/06/2014 13:43:54</messagedate><car></car><stat>ping</stat><ping></ping><job>operator</job><operator></operator><jobref></jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="12"><messagedate>19/06/2014 13:42:58</messagedate><car>1</car><stat>disp</stat><ping></ping><job>100 blythe road</job><operator></operator><jobref>220213</jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="13"><messagedate>19/06/2014 13:42:57</messagedate><car>9</car><stat>disp</stat><ping></ping><job>4 lilestone street; london</job><operator></operator><jobref>220620</jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="14"><messagedate>19/06/2014 13:42:56</messagedate><car>8</car><stat>disp</stat><ping></ping><job>4 lilestone street; london</job><operator></operator><jobref>220618</jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="15"><messagedate>19/06/2014 13:42:56</messagedate><car>6</car><stat>disp</stat><ping></ping><job>3p+3hl 22 mount street</job><operator></operator><jobref>221165</jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="16"><messagedate>19/06/2014 13:42:54</messagedate><car>5</car><stat>disp</stat><ping></ping><job>godolphin letymer school , iffley road</job><operator></operator><jobref>220211</jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="17"><messagedate>19/06/2014 13:42:53</messagedate><car>4</car><stat>disp</stat><ping></ping><job>32 aberdeen place</job><operator></operator><jobref>220774</jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="18"><messagedate>19/06/2014 13:42:52</messagedate><car>2</car><stat>disp</stat><ping></ping><job>45 lockbridge courtroom woodfield road</job><operator></operator><jobref>221121</jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="19"><messagedate>19/06/2014 13:42:50</messagedate><car>89</car><stat>disp</stat><ping></ping><job>c------ gatwick airport north___ezy 8894__maracus</job><operator></operator><jobref>220793</jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="20"><messagedate>19/06/2014 13:42:48</messagedate><car>43</car><stat>disp</stat><ping></ping><job>183 edgware road; london</job><operator></operator><jobref>221193</jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="21"><messagedate>19/06/2014 13:42:45</messagedate><car>32</car><stat>disp</stat><ping></ping><job>best westbury shaftesbury hotel, 27 devonshire terrace</job><operator></operator><jobref>220989</jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="22"><messagedate>19/06/2014 13:42:43</messagedate><car>111</car><stat>disp</stat><ping></ping><job>22/17 st. edmunds terrace; london</job><operator></operator><jobref>220973</jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log><log id="23"><messagedate>19/06/2014 13:42:42</messagedate><car>10</car><stat>disp</stat><ping></ping><job>westminster academy;255 harrow road</job><operator></operator><jobref>220617</jobref><gpsx></gpsx><gpsy></gpsy><carspeed></carspeed></log></loglist>

but page logs.php not updating should be.

the logs.php file populating list follows:-

<ul id="loglist" class="main-logs"></ul> <script type="text/javascript"> $(document).ready(function(){ $.ajax({ type: "get", url: 'scripts/xml/logs.xml', datatype: "xml", success: function(xml) { var select = $('#loglist'); $(xml).find('log').each(function(){ var auto = $(this).find('car').text(); var stat = $(this).find('stat').text(); var job = $(this).find('job').text(); select.append("<li>"+car+' - '+stat+' - '+job+"</li>"); }); } }); }); </script>

anyone have thought why not updating?

i tried illustration on fiddle , seems work if xml string. seek alter datatype parameter string instead of xml , should work.

here example: http://jsfiddle.net/8gean/

try this:

<html> <body> <!--list update--> <ul id="loglist" class="main-logs"></ul> <script type="text/javascript"> $(document).ready(function(){ $(function(){ //every 4 seconds send ajax request update xml file setinterval(function(){ $.ajax({ url:'scripts/php/log.controller.php', success:function(data){ //when xml updated, send ajax request retrieve , update list $.ajax({ type: "get", url: 'scripts/xml/logs.xml', datatype: "string", success: function(xml) { var select = $('#loglist'); $(xml).find('log').each(function(){ var auto = $(this).find('car').text(); var stat = $(this).find('stat').text(); var job = $(this).find('job').text(); select.append("<li>"+car+' - '+stat+' - '+job+"</li>"); }); } }); } }); },4000); }); }); </script> </body>

php jquery ajax

No comments:

Post a Comment