@lanzor

При попытке отправить Ajax запрос выдает ошибку: Uncaught SyntaxError: Unexpected token A in JSON at position 0 at Function.parse [as parseJSON]...?

Полная версия ошибки:
VM617:1 Uncaught SyntaxError: Unexpected token A in JSON at position 0
at Function.parse [as parseJSON] ()
at Object. (query.js:10)
at c (jquery-3.5.1.min.js:2)
at Object.fireWith [as resolveWith] (jquery-3.5.1.min.js:2)
at l (jquery-3.5.1.min.js:2)
at XMLHttpRequest. (jquery-3.5.1.min.js:2)

Ajax-код (query.js):
$(document).ready(function() {
	$('#id90').click(function() {
		let postQueryUnicalId = 'pm';
		$.ajax({
			type: 'POST',
			url: '../db-query-array.php',
			dataType: 'text',
			data: 'postQueryUnicalId=' + postQueryUnicalId
		}).done(function(msg) {
			let table_array = $.parseJSON(msg);
			alert(table_array);
		}).fail(function() {
			alert('Произошла ошибка!');
		});
	});
});


Принимающий пхп (db-query-array.php):
require ('db-connect.php');

if($_POST['postQueryUnicalId'] == 'pm') {
	$stmt = $pdo->prepare('SELECT * FROM markers');
	$stmt->execute();

	if($stmt->rowCount() > 0) {
		foreach ($stmt as $row) {
			echo json_encode($row);
		}
	} else {
		echo json_encode('База данных пуста!');
	}
}


Как думаете, в чем может быть проблема? Весь инет облазил, но понять так и не смог!
  • Вопрос задан
  • 114 просмотров
Решения вопроса 2
@FanatPHP
Чебуратор тега PHP
проблема в том что яваскрипт ждет 1 жейсон а ты посылаешь ему 100500

if($_POST['postQueryUnicalId'] == 'pm') {
    $stmt = $pdo->query('SELECT * FROM markers');
    echo json_encode($stmt->fetchAll());
}
Ответ написан
Stalker_RED
@Stalker_RED
Откройте в devtools вкладку сеть, найдите этот запрос, и посмотирте что НА САМОМ ДЕЛЕ приходит в ответе сервера. В ошибке написано, что ответ начинается с символа "A", при том что json должен начинаться со скобки.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
28 сент. 2020, в 00:10
15000 руб./за проект
27 сент. 2020, в 21:54
15000 руб./за проект