Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 错误JSON.parse使用ajax con pusher PHP?_Javascript_Php_Jquery_Json - Fatal编程技术网

Javascript 错误JSON.parse使用ajax con pusher PHP?

Javascript 错误JSON.parse使用ajax con pusher PHP?,javascript,php,jquery,json,Javascript,Php,Jquery,Json,我在使用库推送器ajax php发送几个参数时遇到问题 我失败了:SyntaxError:JSON.parse:JSON数据第1行第1列的意外字符 编写PHP和JS代码: <script src="https://js.pusher.com/3.0/pusher.min.js"></script> <?php $this->load->view('scripts_ini'); ?> <!-- inline scripts related

我在使用库推送器ajax php发送几个参数时遇到问题

我失败了:
SyntaxError:JSON.parse:JSON数据第1行第1列的意外字符

编写PHP和JS代码:

<script src="https://js.pusher.com/3.0/pusher.min.js"></script>

<?php $this->load->view('scripts_ini'); ?>

<!-- inline scripts related to this page -->
<script type="text/javascript">

    var pusher = new Pusher('9999999999999999');
    var channel1 = pusher.subscribe('puntaje_channel1');

    channel1.bind('msg_puntaje1', function(rpta) {
        console.log('+>'+rpta);
        $('#sp_puntaje1').html(rpta);       
    });


    $(document).ready(function() {

        $('.puntaje1').click(function(e) {
            e.preventDefault();

            var puntaje1 = parseInt($('#sp_puntaje1').text());          

            $.ajax({
                url: 'push_puntaje1.php',
                type: "POST",
                dataType: "json",
                data : {
                    message: val_res,
                    socket_id: pusher.connection.socket_id
                }
            }).done(function(rpta) {
                console.log('->'+rpta);
                $('#sp_puntaje1').html(rpta);
            }).fail(function( jqXHR, textStatus, errorThrown){
                console.log('error, '+errorThrown);     
            });


        });

    }); 
</script>
<?php
require 'Pusher.php';

$mensaje1 = $_POST['message'];

$pusher1 = PusherInstance::get_pusher();

$pusher1->trigger(
    'puntaje_channel1',
    'msg_puntaje1',
    $mensaje1,
    $_POST['socket_id']
);

echo $mensaje1;
?>

我希望您能帮助我解决我的问题。

您遇到了一个json解析错误,因为您没有发送
json
,而是发送
text/html

更改此行
echo$mensaje1到此:

echo json_encode($mensaje1);
您还可以将
内容类型
头设置为json,以确保从PHP代码中读取:

header('Content-Type: application/json');

亲爱的,我确实这样做了,但我仍然生成了相同的错误。@Hernando那么一定有错误,您可以检查浏览器上的“网络”选项卡,查找ajax请求并查看是否抛出了任何PHP错误。
header('Content-Type: application/json');