AJAX Timed MySQL Refresh - PullRequest
       3

AJAX Timed MySQL Refresh

0 голосов
/ 05 апреля 2011

Я хочу иметь возможность обновлять страницу каждые 2 минуты, чтобы затем запускался файл PHP, чтобы он снова заполнил таблицу данных. Я прочитал, что setTimeout () может быть использован для этого, но я не могу понять, как это сделать. У кого-нибудь есть пример кода?

<script type="text/javascript">
function showSellers(isbn)
{
    //if there is no isbn given, show nothing and return nothing
    if (isbn=="")
    {
        document.getElementById("sellers").innerHTML="";
        return;
    } 
    //AJAX request for IE7+, Firefox, Chrome, Opera, Safari
    if (window.XMLHttpRequest)
    {
        xmlhttp=new XMLHttpRequest();
    }
    //AJAX request for IE6, IE5
    else
    {
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    //if the state of the page changes, do this
    xmlhttp.onreadystatechange=function()
    {
        if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {
            document.getElementById("sellers").innerHTML=xmlhttp.responseText;
        }
    }
    xmlhttp.open("GET","ajax_seller.php?isbn="+isbn,true);
    xmlhttp.send();
}
</script>

1 Ответ

1 голос
/ 05 апреля 2011

Если вы хотите делать это периодически, вы можете использовать setInterval;

setInterval(function(){ showSellers("my_isbn"); }, 120000);

Вы можете использовать глобальную переменную для isbn;

globalISBN = "123456";
setInterval(function(){ showSellers(globalISBN); }, 120000);

Получение параметра GET;

function getParameter(name)
{
    var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');

    for(var i = 0; i < hashes.length; i++)
    {
        var hash = hashes[i].split('=');
        if(hash[0] == name)
        {
             return hash[1];
        }
    }

    return null;
}

setInterval(function(){ showSellers(getParameter("isbn")); }, 120000);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...