2014-01-11 2 views
2

Есть ли способ тихо обновить страницу, содержащую данные из моей базы данных SQL? Я хочу сделать так, чтобы он менял значение моего абзаца (выбор1) при изменении информации в базе данных.SQL/PHP Silent Refresh

Все работает и при первой загрузке выводит то же значение, что и база данных, но когда i изменить значение в базе данных, которое оно не изменится на значение на странице, без меня, обновление

может мне кто-нибудь помочь?

<html> 
<p id="choice1"></p> 
<script> 
function refresh(){ 
    setInterval(function() { 
     document.getElementById('choice1').innerHTML =<?php 
      $connect=mysql_connect("****","**","***"); 
      mysql_select_db("enloecsc"); 
      $query=mysql_query("SELECT * FROM questions WHERE number=1"); 
      $query2=mysql_fetch_array($query); 
      echo $query2['q1']; 
      ?>> ; 
    }, 1000); 
} 
</script> 

<html> 

Спасибо!

+4

PHP является на стороне сервера. Как только будет выведен последний обработанный html-тег, его работа будет выполнена. Для этой задачи вам необходимо использовать ajax. – danronmoon

+0

Как дан говорит, что вы ищете Ajax –

+0

, можете ли вы сослаться на ссылку о том, как использовать ajax для этой задачи? – user3183876

ответ

2

Если вы не возражаете обновления всей страницы, вы можете попробовать использовать мета-тег обновления в заголовке

<meta http-equiv="refresh" content="60;http://www.example.com/index.php" /> 

, если вы хотите использовать DIV, вам придется использовать Ajax. Хороший способ сделать это через JQuery:

//javascript code, assumes jquery is loaded 
$(document).ready(function() { 
    setInterval(function() { $('#myDiv').load('contentToLoad.php');}, 5000); 
}); 

contentToLoad.php бы содержимое как сценарий PHP (или все, что вы хотите, в том числе HTML)