Отправляю сюда что бы было куда направлять в случае повхоряющегося попроса...
пример упрощён для более лучшего понимания новичков.
В целом на стороне сервера это выглядит примерно так:
PHP | 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
| // ключ массива который проверяем.
$key = 'index';
if ( isset($_POST[$key]) )
{
$result = [];
// назначаем переменную с результатом вывода, по умолчанию тру
// т.к. чаще всего она должна быть именно тру
$success = true;
$errCode = 0;
$errCodeDescription = 'Всё чётко';
if ( (int) $_POST[$key] > 0 )
{
// выполняем какой то код...
// в результате которого олучаем рузультат выполнения кода..
$result = [
'data' => 'bla bla lba',
'html' => '<div> 123123123 </div>'
];
// понимаем: всё ОК или не ок...
// и если ОШИБКА то собираем инфо об ошибке
if ( $result == false )
{
$success = false;
$errCode = 1;
$errCodeDescription = 'и тут: что то пошло не так...';
}
}
else
{
// и если ОШИБКА то собираем инфо об ошибке
$success = false;
$errCode = 2;
$errCodeDescription = $key . ' должен быть больше нуля...';
}
$resp = [
'data' => $result,
'success' => $success,
'errCode' => $errCode,
'errCodeDescription' => $errCodeDescription
];
print( json_encode($resp, true) );
} |
|
Вот так примерно всё выглядит на стороне клиента...
Javascript | 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
| $('#some_elem').click(
function()
{
$.ajax({
url : 'some/url.php',
data : {
'index' : 10,
'type' : 'addSomeTextVar'
},
type : 'POST',
dataType: "josn",
success : function(resp)
{
if ( resp.success )
{
$('#target').html(resp.data.html);
alert(resp.data.data);
}
else
{
var str = 'Ошибка #' + resp.errCode + '\n';
str+= resp.errCodeDescription;
alert( str );
}
},
error : function(resp)
{
alert('Непредвиденная ошибка');
}
})
}
); |
|
|