Получение данных из MySQL с использованием PHP в реальном времени? - PullRequest
2 голосов
/ 02 января 2011

Мне интересно, как я мог бы получать данные из базы данных MySQL и отображать их в режиме реального времени, используя PHP. Без необходимости обновлять страницу. Спасибо!

Ответы [ 3 ]

5 голосов
/ 02 января 2011

Используйте AJAX (для этого я предлагаю библиотеку jQuery), и ваш скрипт AJAX (написанный на PHP) запрашивает базу данных MySQL.

2 голосов
/ 07 июня 2014

Вы можете использовать Socket.Io для большей скорости, эффективности и производительности для вашего сервера

http://socket.io/

Но для этого вам нужны Node.Js

1 голос
/ 02 января 2011

Вам придется использовать JavaScript. Вы можете использовать setInterval(function, n), чтобы запускать вызовы обновления каждые n миллисекунды, и библиотеку, такую ​​как jQuery, для обработки вызова ajax и обновления вашей страницы.

Загрузите jQuery или ссылку на размещенную на CDN версию jQuery на вашей странице. Затем поместите что-то вроде этого на своей странице:

setInterval(function(){
    // inside here, set any data that you need to send to the server
    var some_serialized_data = jQuery('form.my_form').serialize();

    // then fire off an ajax call
    jQuery.ajax({
        url: '/yourPhpScriptForUpdatingData.php',
        success: function(response){
            // put some javascript here to do something with the 
            // data that is returned with a successful ajax response,
            // as available in the 'response' param available, 
            // inside this function, for example:
            $('#my_html_element').html(response);
        },
        data: some_serialized_data
    });
}, 1000); 
// the '1000' above is the number of milliseconds to wait before running 
// the callback again: thus this script will call your server and update 
// the page every second.

Прочитайте jquery docs в разделе 'ajax', чтобы понять вызов jQuery.ajax (), и прочитайте о 'selection' и 'манипуляциях', если вы не понимаете, как обновить html-страницу с помощью результаты вашего вызова AJAX.

Другой способ постоянно обновлять вашу страницу - это использовать постоянное соединение, например, веб-сокеты (в настоящее время не поддерживаются всеми распространенными платформами браузеров) или настройку push-server в стиле кометы. Попробуйте поискать в комете и / или в веб-сокетах больше информации, но я думаю, что описанный выше метод будет намного проще в реализации.

...