2015-11-21 2 views
2

я использовал PHP 5.6Этот PHP скрипт не работает в Internet Explorer и Microsoft Краю, но работает в Chrome/Firefox/Safari/Opera

Я написал сценарий PHP, который читает в текстовый файл и выбирает случайную строку от него, затем отправляется в html всякий раз, когда нажимается кнопка «Получить случайную строку».

В Chrome/Firefox/Safari/Opera это прекрасно работает, но в Internet Explorer и Microsoft край вывод всегда один и тот же. Он работает только в первый раз и не меняет результат после первого нажатия кнопки. Я имею в виду, что для второго и последующих кликов выход должен измениться.

Есть ли что-то, что я должен обрабатывать специально для Internet Explorer и Microsoft Edge, чтобы это сделать?

Я попытался с помощью

//flush() 
//ob_flush() 
//ob_end_flush() 
//session_write_close() 

после и перед

echo $randomLine; //In the php script 

, но это не помогло.

Может кто-нибудь сообщить мне, что происходит не так? Благодаря..!!

Update 1:

Запрос осуществляется с событием нажатия кнопки через JavaScript:

function randomPathButtonClicked() 
{ 
    var xmlhttp = new XMLHttpRequest(); 
    xmlhttp.onreadystatechange = function() { 
     if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { 
      document.getElementById("randomPathId").textContent = xmlhttp.responseText; 
     } 
    }; 
    xmlhttp.open("GET", "serverSideRandomPathGenerator.php", true); 
    xmlhttp.send(); 
} 

и последняя строка в PHP, как:

echo $selectedRandomLine; 
+1

PHP работает на стороне сервера, независимо от браузера. Укажите код своей кнопки. Это запрос AJAX или полное обновление страницы? – clemens321

+0

@ clemens321 добавлен код. Пожалуйста, проверьте. Спасибо –

ответ

1

XMLHttpRequest функция GET может только передавать символы ASCII (Internet Explorer)

Использовать POST вместо этого это обычно может решить проблему.

+0

Wow ... Это отлично работает. Благодаря :) –

Смежные вопросы