簡體   English   中英

使用jQuery刷新PHP在IE中不起作用

[英]PHP refreshing using jQuery doesn't work in IE

我想在javascript / jQuery中創建一個函數,該函數使用php腳本刷新我網站上的一些數據。 我正在這樣使用它:

function aval()
{
...
$("#dost").load("readadmin.php?date="+dzien+"&diff="+diff+"&dtyg="+d);
setTimeout(aval,200);
}

其中#dost指向網站末尾的div

然后,我的readadmin.php文件如下所示:

    <?php

    $diff=$_GET["diff"];
    $name = $_GET["date"];
    $dtyg = $_GET["dtyg"];

    $plik = fopen("myfile","r");
    $tekst = fread($plik,filesize("myfile"));
    fclose($plik);
    $bookings = explode(";;;;", $tekst);

    for ($i=0; $i<(sizeof($bookings)-1); $i++)
    $data[$i] = explode(":::",$bookings[$i]);

    echo "<script>";
    // here I'm echoing some javascript code, that basically changes styles on my page, 
//depending on my variables and data from a file
    echo "</script>";

    ?>

另外,在我的網站(admin.php)上,我使用登錄名,因此我的網站如下所示:

<?php
session_start();
if(!session_is_registered('pass'))
header('location: login.php');

?>
...html code

login.php:

 ..something not important, forms to get $_POSTs etc..
<?php
    if ($_POST["login"] == $login && $_POST["pass"] == $pass)
        {
            session_register('login');
            session_register('pass');
            header("location: admin.php");
        }
    ?>

現在,一切都可以在Chrome或Firefox上正常運行,但不能在IE上運行。 當我更改文件中的數據時,IE不會對此做出反應,並繼續顯示舊數據。 當我在readadmin.php的開頭和結尾處放置session_start()和session_destroy()時,數據會正確刷新,但是無論我執行什么操作,它都將我注銷。 沒什么奇怪的,我每200ms開始一個新的會話,所以我被踢了。

還有一件事:當我更改從站點轉到readadmin.php的數據時,它會向后顯示正確的數據,然后立即更改為舊數據。

請幫忙。

您可以將時間戳添加到url,以便瀏覽器不會緩存該文件:

$("#dost").load("readadmin.php?date="+dzien+"&diff="+diff+"&dtyg="+d+"&t="+Date.now());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM