使用angularjs php mysql的实时通知

时间:2016-05-20 05:04:43

标签: php mysql angularjs real-time

我想在我的网站上使用angular,php和mysql实现像facebook这样的实时通知。是否有任何人可以帮助我的参考链接或教程?

此外,还有其他工具可以在我的网站上实现吗?

2 个答案:

答案 0 :(得分:3)

尝试使用Socket.io,它将帮助您实现通知,聊天或任何实时应用程序。

答案 1 :(得分:2)

您可以使用这些功能来实现这些功能。

  1. 基于PHP JSON的API
  2. 基于PHP套接字的JSON API
  3. 基于套接字IO的API
  4. 所有这些API都可以通过AngularJS或jQuery轻松解析

    对于PHP,如何制作API

    <?php
    //Set header for Javascript to recognize it as the JSON output
    header('Content-Type:application/json;');
    //I am using GET parameters, but POST can also be used and can make amazing APIs
    switch($_GET['action']){
        case "addlike":
             //SQL Query passed to add a like as facebook
             //Set the output array to provide json Output, here's the example
             $output['status'] = 200;
             $output['message'] = 'Like Added';
        break;
        case "addcomment":
        break;
    }
    echo json_encode($output);
    

    要使用上述代码,网址为:

    http://yourserve/youfile.php/?action=addlike
    

    输出将是

    {
      "status":200,
      "message":"Like Added"
    }
    

    如何在jQuery中使用

    /** For Example you have like button with class="btnlike" **/
    $('.btnlike').on('click',function(){
        $.get('http://yourserve/youfile.php',{action:'addlike'},function(data){
            if(data['status'] == 200){ alert('You Liked the Post'); }
        });
    });
    

    如何在AngularJS中使用

    app.controller('myCtrl',function($scope,$http){
        $scope.message = '';
        $scope.addlike = function(){
            $http.get('http://yourserve/youfile.php',{action:"addlike"}).success(function(data){
                 if(data['status']==200){ $scope.messages = 'You liked the post'; }
            });
        };
    });