Как включить в. php a. html со ссылками на. js, который имеет php коды - PullRequest
0 голосов
/ 28 апреля 2020

У меня есть папка, которая в основном содержит:

  • . php
  • . html
  • . js
  • . css

Внутри php Мне нужно загрузить. html для отображения веб-страницы, конечно. внутри html есть тег script, который ссылается на файл. js.

Теперь внутри файла JS у меня есть php код, необходимый для его запуска. Но при использовании моих методов загрузки html. js выдает ошибку

PHP

<?php
  $value = 1;
  //$html = file_get_html('index.html')
  //include ("index.html")
  readfile('index.html');
?>

HTML

<html>
  <head>
    <script src="script.js"></script>
  </head>
  <body>
  </body>
</html>

Javascript

var myNum = <?php echo json_encode($value); ?>;

К сожалению, способ, которым я включил html thows ошибку в. js файл

Uncaught SyntaxError: Unexpected token '<'

Что я делаю неправильно? Есть ли другой способ включить, чтобы я мог написать php код в моем. js файле. К сожалению, я не могу изменить расширение файла, может быть только один файл php. Я разделил файлы javascript и css, чтобы сделать код немного чище

РЕДАКТИРОВАТЬ: Многие могут показаться недопониманием, Это все еще происходит на сервере, в основном я хочу, чтобы веб-страница Полученный пользователем уже имеет значение для MyNum. Я инициализирую переменную еще до того, как она попадет к пользователю

Ответы [ 2 ]

2 голосов
/ 28 апреля 2020

В вашем файле PHP создайте глобальную переменную, содержащую ваш JSON в теге:

<script>var myNum = <?php echo json_encode($value); ?>;</script>

, а затем укажите ссылку на эту переменную в файле сценария с помощью myNum.

0 голосов
/ 28 апреля 2020
Код

PHP запускается на сервере, клиент (в данном случае браузер) получит только выходные данные PHP. Фактически, браузеры не могут выполнить PHP код.
JavaScript запускается на клиенте. Браузер получает код JavaScript и выполняет его. Единственное, что вы можете сделать, если вы действительно хотите произвести код JS из PHP, это дать окончание. php для файла js (test. js -> test . js. php).
При этом файл будет интерпретироваться как PHP. Браузер получает результат (javascript, который содержит закодированный JSON), и все работает хорошо. Если вы хотите передать $ value из первого PHP для проверки. js. php, читайте о переменных GET.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...