2010-08-17 58 views
0

我正在使用PHP和一些Javascript編寫測驗計劃。使用IE或Chrome時,可以正確回答問題,但Firefox會刷新頁面並增加會話變量。使用Chrome和IE測試會話變量但不使用Firefox

這裏有一個代碼片段:

if(isset($_GET['answer1'])) 
{ 
    if($_GET['answer'] == $_GET['answer1']) 
    { 
     include 'config.php'; 
     if (!$con) { 
     die('Could not connect: ' . mysql_error()); 
    } 
    mysql_select_db($db, $con); 
    $userId = $_SESSION['userId']; 
    $wordNow = $_SESSION['word']; 
    $sql3 = "SELECT * FROM userAccomplishments Where UserId = '$userId' AND 
    word = '$wordNow'"; 

    $result3 = mysql_query($sql3); 
    if (mysql_num_rows($result3) == 0) { 
    $sql4 = "SELECT wordId from allwords WHERE word = '$wordNow'"; 
    $result = mysql_query($sql4); 
    if (!$result) { 
     echo "Could not successfully run query ($sql) from DB: " . mysql_error(); 
     exit; 
    } 
    if (mysql_num_rows($result) == 0) { 
     echo "No rows found, nothing to print so am exiting from random number"; 
     exit; 
    } 
    while ($row = mysql_fetch_assoc($result)) { 
     $wordId = $row["wordId"]; 
     //  echo $row["word"] . " " ."<BR>" ; 
    } 
    list($usec, $sec) = explode(' ', microtime()); 
    $script_end = (float) $sec + (float) $usec; 
    $elapsed_time = (float)($script_end - $script_start); 
    $elapsed_time = $_GET['formvar']; 
    $sql2 = "INSERT INTO userAccomplishments (UserId, word, TimeTaken, wordId) 
     VALUES ('$userId', '$wordNow', '$elapsed_time', '$wordId')"; 
    echo 'You got '. $wordNow . ' in ' .$elapsed_time . ' seconds. <BR><BR>'; 
    $result = mysql_query($sql2); 
    }   
    $_SESSION['views'] = $_SESSION['views'] + 1; 
    } 
    else 
    { 
     $_SESSION['views'] = $_SESSION['views'] + 1; 
     echo 'Keep studying <BR>'; 
    } 


} 
else 
{ 
    $_SESSION['views'] = 1; 

} 

回答

1

看起來不像你打電話session_start()。確保你打電話讓你的會議順利進行!嗚!是啊!

+0

如果你想使用會話,每個頁面上都應該有session_start()。 – Chris 2010-08-17 18:38:30

+0

我在發佈的代碼上方的單獨標記中使用了session_start()。當我將它包含在同一個標​​記中時,它似乎可以在FF中工作。謝謝! – Miamian 2010-08-17 18:49:54

相關問題