2013-07-24 3 views
0

Когда я делаю это:Uncaught SyntaxError: Неожиданный токен НЕЗАКОННО на PHP json_encode

onClick = "return generateClient('<?php echo json_encode($_POST)?>');" 

я получаю эту ошибку на хромированной консоли Google.

Uncaught SyntaxError: Unexpected token ILLEGAL 

Но когда я делаю это из PHP:

print_r(json_encode($_POST)); 

я получаю:

{"lang-select":"C++","question-id":"1","method-name":"Rishi","param-count":"1","lib-path":"c:\\h\\b.out","return-select":"unsigned int","sample-count":"1","class-name":"m"} 

Что может быть ошибка в этом?

+0

Исправление синтаксических ошибок является частью процесса отладки. Это то, что ты должен сделать сам. Это не бесплатная служба отладки –

+0

Посмотрите на сгенерированный источник или инспектор DOM. Это как вы ожидаете? –

ответ

2

Ваши данные содержат " символов.

Ваши значения атрибутов ограничены " символами.

Первые " в данных заканчивают значение атрибута.

A validator бы выбрал это для вас.

Заполните свои данные с помощью htmlspecialchars, чтобы закодировать кавычки.

Смежные вопросы