我在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。
答案 0 :(得分:0)
我认为你有问题:
$.ajax("../PHP/DBConnection.php", data = formData).done(
-----------------------------------^
更改为:
$.ajax("../PHP/DBConnection.php", data: formData).done(
empty()
php函数。通过第一次更改,您将收到PHP中的数据。但是如果你写if...else
会更好,因为你可以在返回两个ifs时遇到问题。如果您发送空数据怎么样?变量已设置,但也是空的。我认为最好的方法是:
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中的值