1 个 PHP 文件中的两个 Ajax 函数


Two Ajax-Functions in 1 PHP-File

我在 2 个不同的文件中有 2 个 Ajax-Functions。一个如果此函数将发送数据,而另一个则不会。

在这种情况下,我需要如何编写 PHP-IF?

无数据 Ajax:

$.ajax("../PHP/DBConnection.php")
.done(
function(response) {                    
        var array = JSON.parse(response);});

我也不确定我是否真的在这个 Ajax 中发送数据。

var formData = "value= "+value;
            $.ajax("../PHP/DBConnection.php", data = formData).done(
            function(response) {
                alert(response);
            })

我会像这样编写PHP代码:

$var = $_POST['value'];
if (empty($var)) {
    echo 'there is no Data';
}
if (isset($var)) {
    echo 'there is a Data';
}

编辑:泰。我仍然收到以下错误消息:响应 = "
注意:未定义的索引:C:''xampp''htdocs''IPA_Webshop''PHP''DBConnection.php 中的值,在第 64

第 64 行为:$var = $_POST['value'];

编辑2:我写了这个代码:

if (empty($_POST['value'])) {
    echo 'there is no Data';
}
if (isset($_POST['value'])) {
    echo 'there is a Data';
}

这行得通。但它总是进入空的。即使我用数据启动 Ajay-Methoe。

我认为有你的问题:

  1. 您没有发送数据:

$.ajax("../PHP/DBConnection.php", data = formData).done( -----------------------------------^

更改为:

$.ajax("../PHP/DBConnection.php", data: formData).done(

  1. 这是因为它总是输入empty() php函数。通过第一次更改,您将收到 PHP 格式的数据。但是如果你写if...else会更好,因为你可能会在返回两个if时遇到问题。如果您发送空数据怎么办?变量已设置,但也是空的。我认为最好的方法是这样的:

 

if (isset($_POST['value'] || !empty($_POST['value'])) {
    echo 'there is a Data';
} else {
    echo 'there is no Data';
}

通过第二次更改,您不会遇到返回两个值的问题,并且可以避免您描述的此错误:

注意:未定义的索引:C:''xampp''htdocs''IPA_Webshop''PHP''DBConnection.php 第 64 行中的值