0
私は、私はメッセージコントローラ機能getnewで作成setIntervalは正しい通知方法ですか?
の1-この方法を使用
、yii2によって構築された私のシステム内のメッセージの通知を作成する必要があります。
public function actionGetnew()
{
$query1 = new Query;
$query1->select([" count(*) as price "] )
->from('messeges');
//->where // here i will add the id of user that logged in and the state of unread messages !
$command1 = $query1->createCommand();
$price = $command1->queryAll();
echo Json::encode($price);
}
2 - 私が作成しましたJSファイル:
window.onload = function() {
setInterval(function(){
$.get('index.php?r=messeges/getnew',function(data)
{
var data=$.parseJSON(data);
$(".messages").html(data[0].price);
});
}, 5000);
};
3 - 私はこのようなHTMLタグを追加しました:
<h6 class="messages"></h6>
すべて正常に動作しますが、私の質問は正しい方法ですか?それは私のサーバーにトラフィックと負荷を追加しますか?より良いアイデアがあれば私に連絡してください!
socket.ioを探検してください。リアルタイムのデータストリーミングアプリケーションを構築するために使用され、通知システムも含まれます –