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

时间:2016-02-12 08:14:21

标签: javascript php ajax

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

如何在这种情况下编写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';
}

编辑:Ty。 我仍然收到以下错误消息: response =“
注意:未定义的索引: C:\ xampp \ htdocs \ IPA_Webshop \ PHP \ DBConnection.php 中的值 64 < / b>

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

EDIT2: 我写了这段代码:

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

这很有效。但它总是进入空洞的。即使我用数据启动Ajay-Methoe。

1 个答案:

答案 0 :(得分:0)

我认为你有问题:

  1. 您没有发送数据:
  2. $.ajax("../PHP/DBConnection.php", data = formData).done( -----------------------------------^

    更改为:

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

    1. 这是因为它总是进入empty() php函数。通过第一次更改,您将收到PHP中的数据。但是如果你写if...else会更好,因为你可以在返回两个ifs时遇到问题。如果您发送空数据怎么样?变量已设置,但也是空的。我认为最好的方法是:
    2. if (isset($_POST['value'] || !empty($_POST['value'])) {
          echo 'there is a Data';
      } else {
          echo 'there is no Data';
      }
      

      通过第二次更改,您没有返回两个值的问题,并且避免了您所描述的此错误:

        

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