Я написал плагин для Wordpress, который генерирует список контента jQuery.accordion, который он извлекает из базы данных. У меня также есть получение новых результатов из базы данных каждые 5 секунд через отдельную страницу (update.php) через метод jQuery.load.
Проблема, с которой я сталкиваюсь, заключается в том, что я генерирую полный HTML-код для div в файле update.php. Кажется, что я мог бы просто сделать запрос к базе данных, а затем вернуть результаты в основной файл, но я не уверен, как это сделать. В основном, моя забота в этом заключается в эффективности, потому что с тем, как я делаю вещи, это может значительно увеличить нагрузку на ресурсы браузера. У меня есть догадка, что использование этого метода будет продолжать расти, пока оно не достигнет пика и не произойдет сбой браузера.
Я ищу какие-либо рекомендации о том, как лучше это кодировать. Ниже приведены примеры для проверки концепции, поэтому я хотел бы, чтобы кто-либо предлагал отзывы, будь то конструктивные или критические. Спасибо!
main.php:
<script type="text/javascript">
$(function() {
$("#accordion").load("update.php");
var refresh = setInterval(function() {
$k("#accordion").load("update.php");
}, 5000);
});
</script>
<div id="accordion"></div>
update.php:
<?php
function page_update() {
global $wpdb;
$out = '';
$out .= '<script type="text/javascript" src="jquery-1.5.min.js"></script>';
$out .= '<script type="text/javascript" src="jquery-ui-1.8.11.custom.min.js"></script>';
$out .= '<script type="text/javascript">
var $j = jQuery.noConflict();
$j(function() {
$j("#accordion").accordion();
});
</script>';
$sql = "SELECT * FROM table ORDER BY name DESC;";
$results = $wpdb->get_results($sql);
foreach($results as $res) {
$out .= '<h3>'.$res->name.'</h3>';
$out .= '<div id="content-'.$res->name.'">'.$res->score.'</div>';
}
echo $out;
}
page_update();
?>