意外< JSON中位于位置0的令牌 [英] Unexpected < token in JSON at position 0

查看:107
本文介绍了意外< JSON中位于位置0的令牌的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直收到此JSON错误,我认为这与html标记或与此冲突的任何其他标记有关.

I keep receiving this JSON error,i think it has something to do with html tags or any other tags that conflicts with it.

这是我的PHP代码:

 <?php
    require_once("connection.php");

    class AddAdminUPController extends Connection{

        public function addAdminUP(){
            include "function.php";
            $username = cleanData($_POST['username']);
            $password = cleanData($_POST['password']);
            if (!empty($username)){
                if(!empty($password)){
                    if(strlen($password) > 8){
                        $select_query = "select * from sample_user where user_name = ?";
                        $stmt = $this->db->prepare($select_query);
                        $stmt->bindParam(1,$username);
                        if($stmt->execute()){
                            if($stmt->rowCount() <= 0){
                                $password = password_hash($password,PASSWORD_BCRYPT,array('cost' => 12));
                                $create_query = "insert into sample_user(user_name,password)values(?,?)";
                                $stmt = $this->db->prepare($create_query);
                                $stmt->bindParam(1,$username);
                                $stmt->bindParam(2,$password);
                                if($stmt->execute()){
                                    echo "<script>".
                                         "Materialize.toast('Created SuccessFully!', 5000, 'green')"
                                        ."</script>";
                                    echo "<script>".
                                         "$('#add_admin_up_form').hide();".
                                         "$('#add_admin_up').hide();";
                                    ?>

                                    $(".enrollment_title").html("<i class='material-icons'>fingerprint</i> Enroll Fingerprint");

                                    <?php
                                    echo "</script>";

                                    include 'flexcode_sdk/include/global.php';
                                    include 'flexcode_sdk/include/function.php';
                                    if(isset($_GET['action']) && $_GET['action'] == 'add'){
                                        $lastID = $this->db->lastInsertId();
                                    ?>

                                    <script type="text/javascript">

                                        $('title').html('User');
                                        function user_register(user_id, user_name) {

                                            $('body').ajaxMask();

                                            regStats = 0;
                                            regCt = -1;
                                            try
                                            {
                                                timer_register.stop();
                                            }
                                            catch(err)
                                            {
                                                console.log('Registration timer has been init');
                                            }

                                            var limit = 4;
                                            var ct = 1;
                                            var timeout = 5000;

                                            timer_register = $.timer(timeout, function() {
                                                console.log("'"+user_name+"' registration checking...");
                                                user_checkregister(user_id,$("#user_finger_"+user_id).html());
                                                if (ct>=limit || regStats==1)
                                                {
                                                    timer_register.stop();
                                                    console.log("'"+user_name+"' registration checking end");
                                                    if (ct>=limit && regStats==0)
                                                    {
                                                        alert("'"+user_name+"' registration fail!");
                                                        $('body').ajaxMask({ stop: true });
                                                    }
                                                    if (regStats==1)
                                                    {
                                                        $("#user_finger_"+user_id).html(regCt);
                                                        alert("'"+user_name+"' registration success!");
                                                        $('body').ajaxMask({ stop: true });
                                                        load('view_admin.php?action=add');
                                                    }
                                                }
                                                ct++;
                                            });
                                        }

                                        function user_checkregister(user_id, current) {
                                            $.ajax({
                                                url         :   "view_admin.php?action=checkreg&user_id="+user_id+"&current="+current,
                                                type        :   "GET",
                                                success     :   function(data)
                                                                {
                                                                    try
                                                                    {
                                                                        var res = jQuery.parseJSON(data);
                                                                        if (res.result)
                                                                        {
                                                                            regStats = 1;
                                                                            $.each(res, function(key, value){
                                                                                if (key=='current')
                                                                                {
                                                                                    regCt = value;
                                                                                }
                                                                            });
                                                                        }
                                                                    }
                                                                    catch(err)
                                                                    {
                                                                        alert(err.message);
                                                                    }
                                                                }
                                            });
                                        }

                                    </script>

                                    <?php

                                        $last_id_query = "select * from sample_user where user_id = ?";
                                        $stmt = $this->db->prepare($last_id_query);
                                        $stmt->bindParam(1,$lastID);
                                        if ($stmt->execute()){
                                            while($row = $stmt->fetch(PDO::FETCH_OBJ)){

                                                $url_register =
                                                base64_encode($base_path."register.php?user_id=".$row->user_id);
                                                echo "<br><a href='finspot:FingerspotReg;$url_register' onclick=\"user_register('".$row->user_id."','".$row->user_name."')\" class='fw_button general_button btn waves-effect waves-light'>Register Fingerprint</a>";
                                            }
                                        }
                                    }
                                    elseif (isset ($_GET['action']) && $_GET['action'] == 'checkreg') {

                                            $sql1       = "SELECT count(finger_id) as ct FROM sample_finger WHERE user_id=".$_GET['user_id'];
                                            $result1    = mysql_query($sql1);
                                            $data1      = mysql_fetch_array($result1);
                                            if (intval($data1['ct']) > intval($_GET['current'])) {
                                                $res['result'] = true;
                                                $res['current'] = intval($data1['ct']);
                                            }
                                            else
                                            {
                                                $res['result'] = false;
                                            }
                                            echo json_encode($res);
                                    }
                                    else { echo "Parameter invalid..";}
                                }
                                else{
                                    echo "<script>".
                                         "Materialize.toast('Query Failed!', 5000, 'red')"
                                        ."</script>";
                                }
                            }
                            else{
                                echo "<script>".
                                     "Materialize.toast('Username already exists!', 5000, 'red')"
                                    ."</script>";
                            }
                        }
                        else{
                            echo "<script>".
                                 "Materialize.toast('Query Failed!', 5000, 'red')"
                                ."</script>";
                        }
                    }
                    else{
                        echo "<script>".
                             "Materialize.toast('Password is too short!', 5000, 'red')"
                            ."</script>";
                    }
                }
                else{
                    echo "<script>".
                         "Materialize.toast('Password is empty!', 5000, 'red')"
                        ."</script>";
                }
            }
            else{
                echo "<script>".
                     "Materialize.toast('Username is empty!', 5000, 'red')"
                    ."</script>";
            }

        }
    }
$add_admin_up_controller = new AddAdminUPController;
echo $add_admin_up_controller->addAdminUP();

?>

在修复此类错误时,我需要帮助.它一直显示:

I need help in fixing this kind of error. It keeps displaying:

SyntaxError:意外令牌<处于JSON位置0的JSON.parse()中的Function.jQuery.parseJSON(jquery.js:8520)在Object.success处(eval在(jquery.js:339),:55:90)处着火(jquery.js) :3148)在Object.fireWith [as resolveWith](jquery.js:3260)在XMLHttpRequest.callback(jquery.js:9718)完成时(jquery.js:9314)

SyntaxError: Unexpected token < in JSON at position 0 at JSON.parse () at Function.jQuery.parseJSON (jquery.js:8520) at Object.success (eval at (jquery.js:339), :55:90) at fire (jquery.js:3148) at Object.fireWith [as resolveWith] (jquery.js:3260) at done (jquery.js:9314) at XMLHttpRequest.callback (jquery.js:9718)

推荐答案

此错误是由于您的响应不是json格式,并且您的ajax请求正在响应json响应. 您可以通过在ajax请求中使用dataType:'text/html'来更改响应标头.

This error due to your responce is not in json format and your ajax request is expecting json responce . You can change responce header by use dataType : 'text/html' in your ajax request.

在这里行动.

function user_checkregister(user_id, current) {
$.ajax({
    url         :   "view_admin.php?action=checkreg&user_id="+user_id+"&current="+current,
    type        :   "GET",
    dataType: 'text/html',
    success     :   function(data)
                    {
                        try
                        {
                            var res = jQuery.parseJSON(data);
                            if (res.result)
                            {
                                regStats = 1;
                                $.each(res, function(key, value){
                                    if (key=='current')
                                    {
                                        regCt = value;
                                    }
                                });
                            }
                        }
                        catch(err)
                        {
                            alert(err.message);
                        }
                    }
});
}

这篇关于意外&lt; JSON中位于位置0的令牌的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆