Php 即使在成功之后,ajax成功调用执行else条件
我将根据if和else条件从php返回响应。即使在执行if条件之后,ajax成功调用也会执行else条件。下面是我的代码。我得到的不是交易成功,而是没有足够的余额。我试了很多方法,但都没有成功。任何帮助都会很好 php代码Php 即使在成功之后,ajax成功调用执行else条件,php,json,ajax,Php,Json,Ajax,我将根据if和else条件从php返回响应。即使在执行if条件之后,ajax成功调用也会执行else条件。下面是我的代码。我得到的不是交易成功,而是没有足够的余额。我试了很多方法,但都没有成功。任何帮助都会很好 php代码 <?php if(isset($_POST['name'])){ // some code } if(isset($_GET['paymentInfo'])) { // some code
<?php
if(isset($_POST['name'])){
// some code
}
if(isset($_GET['paymentInfo']))
{
// some code
if($dataPayerBalance >= $amount)
{
// some code
$response = 'success';
}
else
{
$response = 'error';
}
// some code
echo json_encode($response);
}
?>
试试这个
PHP
<?php
if(isset($_POST['name'])){
// some code
}
if(isset($_GET['paymentInfo']))
{
$response = array();
// some code
if($dataPayerBalance >= $amount) {
// some code
$response = ('status'=>'success');
}
else {
$response = ('status'=>'error');
}
// some code
echo json_encode($response);
}
?>
问题是您正在将字符串编码为json,并且在响应中预期的不是json,而是字符串。让我们把它们都变成JSON: 在php代码中:
echo json_encode(['result'=>$response]);
在ajax调用中:
$.ajax({
url: "your api url",
type: 'GET',
data: {'paymentInfo' : dataToSend},
dataType: 'json'
}).done(function( data ) {
if (data.result == 'success'){
//your custom action
}
})
.fail(function() {
//your custom action
});
它仍然在提醒我网络选项卡下的响应没有足够的平衡,我得到了json和所有其他html代码。这是个问题吗?{“结果”:“成功”}//还有一些代码。。。。。。。。。。。。。。。。。这就是问题所在吗?我已经把js的部分编辑好了。试试看。
echo json_encode(['result'=>$response]);
$.ajax({
url: "your api url",
type: 'GET',
data: {'paymentInfo' : dataToSend},
dataType: 'json'
}).done(function( data ) {
if (data.result == 'success'){
//your custom action
}
})
.fail(function() {
//your custom action
});