Вот мой источник; лол
$(document).on('click', '#findFirstUndefined', function (event) {
event.preventDefault();
$.ajax({
type: 'post',
url: './custom/tool.node.php',
dataType: 'text',
data: {
m: 't',
f: 'fu'
},
beforeSend: function () {
console.log('Request find first undefined node..');
},
success: function (data) {
console.log('Request success.');
console.log(data);
},
error: function () {
console.log('Request failure.');
}
});
});
// Following is tool.node.php
if ($_POST['m'] === 'n') {
if (createNode($db)) echo $db - > insert_id;
else echo 'false';
}
// ..
else if ($_POST['m'] === 't') {
if ($_POST['t'] === 'fu') {
// Find first undefined node..
$sql = "select `id` from `v3_node` where `type`=0 limit 0,1;";
$rst = $db - > query($sql);
// Initialize array for json string
$return = array('rstExist' = > null);
if ($rst - > num_rows === '0') {
// Undefined Node NOT exist.
$return['rstExist'] = false;
} else {
// Undefined Node exist.
$return['rstExist'] = true;
// Find 20 items around first undefined node..
$row = $rst - > fetch_assoc();
$sql = "select * from `v3_node` where `id`>=".($row['id'] - fmod($row['id'], 20) + 1).
" limit 0, 20;";
$rst = $db - > query($sql);
$return['node'] = array();
while ($row = $rst - > fetch_assoc()) {
array_push($return['node'], $row);
};
};
echo json_encode($return);
};
};
Все, что я хотел, это получать строки через ajax, а ответ пустой … ничего в этом нет. Я даже не могу найти свою ошибку, поэтому нужна помощь!
а также если я изменю dataType
атрибут ‘json’, вывод на консоль Request Failure
который является ошибкой обратного вызова; это почему???
Следуя этой линии data: { m: 't', f: 'fu' },
, Это будет делать еще заявление, потому что m == 't'
else if($_POST['m'] === 't')
В этом другом заявлении это должно быть t == 'fu'
, но это не так, потому что $_POST['t']
не существует. Я думаю, что это должно быть f
вместо t
, Так что измените эту строку:
if($_POST['t'] === 'fu') {
к
if($_POST['f'] === 'fu') {
Других решений пока нет …