2016-05-27 3 views
0

Я пытаюсь обновить контроллер на веб-сайте MVC, чтобы узнать, была ли изменена переменная, поэтому я могу выполнить SQL-запрос.Как обновить PHP-скрипт в MVC без обновления страницы?

Я пытался сделать это с просмотра файла, как это:

$(document).ready(
    function() { 
     setInterval(function() { 
      $('#show').text(<? $ukaz->process(); ?>); 
     }, 1000); 
    } 
); 

, но он не работает. Я пытался выяснить это несколько часов, но безуспешно, поэтому я подумал, что могу спросить здесь.

+11

Вам необходимо использовать AJAX. Один из них не просто вызывает PHP-код из JS. –

+0

'$ ('# show'). Load ('/ some/url/that/calls/your/php/script.php');' – Steve

+0

Я не могу просто загрузить файл. Он вернет ошибку php, потому что это веб-сайт MVC (OOP). – Muhaha

ответ

0

Вам необходимо сделать вызов ajax, и внутри ajax-вызова вы можете что-либо сделать.

На главной странице вам необходимо определить свою Ajax вызов, как это:

$(document).ready(
    function() { 
     setInterval(function() { 
      $('#show').load('ajax.php'); 
     }, 1000); 
    } 
); 

и в вашем ajax.php вам нужно создать функцию PHP, где вы получите все, что информацию будет изменена на каждый обновить.

Вы можете сделать также другой подход, с JQuery $.ajax(), $.post() и $.get(), где вы можете справиться с содержимым внутри AJAX, использовать JSON или разобрать некоторые HTML и т.д. Вы можете сделать что-либо в реальном масштабе времени.

+0

Я не могу загрузить php-класс. – Muhaha

+0

@Muhaha С вызовом AJAX вы не загружаете непосредственно PHP-класс. Вы делаете HTTP-запрос против конечной точки на своем сервере (вероятно, это скрипт PHP в этом случае). Внутри этого скрипта вы выполняете всю необходимую логику (например, загружаете классы, вызывая базы данных и т. Д.) И возвращаете результат (через выход из сценария) вызывающему клиенту AJAX. –

+0

Я все еще получаю следующее: Неустранимая ошибка: Class 'Controller' не найден в /web/controllers/SomethingController.php в строке 3 – Muhaha

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