Ajax, Uncaught ReferenceError: data is not defined

Ajax, Uncaught ReferenceError: data is not defined

我正在尝试上传一张照片并将其数据和另一张照片的数据传递给另一张 php file.When 我 select 照片并上传当前 php 文件给出一个错误:Uncaught ReferenceError: PZ71AUGW5O295 is not defined。 PZ71AUGW5O295 是 gets.Sorry 可能存在语法错误的团队代码。

<?php

$teamCode = $_GET['tc'];

?>

var uploader = {
    url: "faces.php",
    method: "POST",
    success: function (data){
        
    }
};

function update() {
    searchParams = new FormData();
    searchParams.append('teamCode', <?php echo $teamCode;  ?>); // the error will be here
    searchParams.append('selfie', document.getElementById("faceinput").files[0]);

    uploader.cache = false;
    uploader.contentType = false;
    uploader.processData = false;
    uploader.xhr = function () {
        var jqXHR = null;
        if (window.ActiveXObject) {
            jqXHR = new window.ActiveXObject("Microsoft.XMLHTTP");
        } else {
            jqXHR = new window.XMLHttpRequest();
        }
        //Upload progress
        jqXHR.upload.addEventListener("progress", function (evt) {
            if (evt.lengthComputable) {
                var percentComplete = Math.round((evt.loaded * 100) / evt.total);
                //Do something with upload progress
                $(".progress-bar").css("width", percentComplete + "%");
            }
        }, false);
        return jqXHR;
    }
    uploader.data = searchParams;
    $.ajax(uploader);
}

上传照片后出现错误:

Uncaught ReferenceError: PZ71AUGW5O295 is not defined
at update (upload_photo.php?tc=PZ71AUGW5O295:86)
at HTMLInputElement.<anonymous> (upload_photo.php?tc=PZ71AUGW5O295:71)
at HTMLInputElement.dispatch (jquery.min.js:3)
at HTMLInputElement.r.handle (jquery.min.js:3)

你只是在 js 中回显你的 php 变量,然后解析的数据将被传输到 js 代码,所以现在看看你的 js 代码会是什么样子。

searchParams.append('teamCode', PZ71AUGW5O295);

在这种情况下js会尝试查看PZ71AUGW5O295变量是否存在,当然不存在。

除此之外,您似乎以一种不太好的方式做了很多事情。 f.e。使用 GET 而不是 POST 传递图像,使用 php 图像提交以创建另一个请求。什么想法?只需使用 js 在图像上传页面中构建您的请求,然后传递它,让 php 代码再次发送另一个请求的想法是什么。