Передайте массив PHP в Javascript внутри строковой переменной (HTML Injection)
Я знаю, что это общий вопрос, но я борюсь с этим!
Я создаю HTML из файла PHP, поэтому каждый HTML и Javascript передаются как переменная ($string). Это часть моего кода, где мне нужно передать значения $objects_list в переменную javascript objects_list:
$string = '<script type="text/javascript">
function open_project(id)
{
var objects_list = '. json_encode($objects_list) .';
console.log(objects_list.lenght);
}
</script>';
Дело в том, что console.log печатает не определено. Как я могу решить это? Если я удаляю json_encode, я получаю ошибку для преобразования массива в строку.
РЕДАКТИРОВАТЬ:
Просто заметил, если я console.log(objects_list[5]
Например, он печатает правильное значение, так что проблема на самом деле с objects_list.lenght
Похоже.
1 ответ
Решение
Орфографическая ошибка:
console.log(objects_list.lenght);
Должно быть
console.log(objects_list.length);