I’m having trouble getting this <div> to automatically update using jQuery. It’s essentially a chat feature that would have the page refresh every two seconds. I’ve tried several variances of this with no luck, so completely rewriting it differently is more than welcome.
jQuery code:
function updateChat() { $.get('chat_data.php', function(data) { $('div#chattable').html(data); }); window.setTimeout('updateChat();', 2000); } $(document).ready(function() { updateChat(); });
Here’s the <div> code, which gets the data from chat_data.php. This should be updating:
<div id='chattable'> <?php include('js/chat_data.php'); ?> </div>
chat_data.php:
<?php foreach($query->result() as $row): echo '<div class='chatrow'>'; echo '<div class='chattime'>'.date('[M.d] g:ia',strtotime($row->time)).'</div>'; echo '<div class='chatnamematch'>['.$row->name.']</div>'; echo '<div class='chatbody'>'.$row->body.'</div>'; echo '</div>'; endforeach; ?>
The error that you get, of
Call to a member function result() on a non-object in /var/www/js/chat_data.php on line 1means that the variable$queryis not being set correctly. You said you were using CodeIgniter, is so, which folder is the fileajax_data.phplocated in? Application/controllers?