首页 > 解决方案 > 传递给 PHP 文件的 AJAX 数据给出“未定义索引”错误

问题描述

我有这个ajax片段可以将数据传递给特定的php文件。传递的数据是一个名称html element

这是我的ajax代码:

$(document).ready(function () {
    alert(imgno);
    $.ajax({
        url: 'includes/upload-ad-image-inc.php',
        type: 'post',
        dataType: "html",
             data: {
            imgno: imgno
        }
    });
});

的值imgno将是:1,2,3,4,.....

这是我的上传广告图片inc.php

$imageNO = $_POST['imgno'];

$sql = "UPDATE user SET userFName='$imageNO' WHERE  userid=1;";
mysqli_query($conn, $sql);

但是我收到这个错误说未定义的索引:imgno

但令人困惑的是,当我将 php 文件更改为另一个 php 时,我可以工作

有人可以帮帮我吗?

标签: javascriptphpajaxpost

解决方案


最后我找到了问题和解决方案:

当您有多个调用同一个 PHP 文件的 ajax 函数时,它会引发undefined index错误

为了克服这个问题,使用isset()PHP检查传递的数据

if (isset($_POST['imgno'])) { 
    $imageNO = $_POST['imgno'];

    $sql = "UPDATE user SET userFName='$imageNO' WHERE  userid=1;";
    mysqli_query($conn, $sql);
}

推荐阅读