Задать вопрос
@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('База данных пуста!');
	}
}


Как думаете, в чем может быть проблема? Весь инет облазил, но понять так и не смог!
  • Вопрос задан
  • 1417 просмотров
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 2
FanatPHP
@FanatPHP
Чебуратор тега РНР
проблема в том что яваскрипт ждет 1 жейсон а ты посылаешь ему 100500

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

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

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽