Я не уверен, может ли строка PHP быть запущена внутри функции JavaScript. Например:
<script language=javascript> var int=self.setInterval("message()",1000); function message() { <?PHP mysql_query("SELECT * FROM example"); ?> } </script>
Я не пытался запустить это, но я не думаю, что вы можете запустить PHP, как это. Может ли кто-нибудь помочь. Могу ли я запустить PHP-скрипт внутри javascript-функции каким-либо образом, не используя вызов внешнего файла PHP через Ajax?
Давайте поговорим об основных принципах 🙂
PHP – это язык, который в этом случае работает на вашем веб-сервере. Он создает веб-страницу, которую люди видят, и весь этот код PHP уже полностью выполнен к тому моменту, когда страница делает его пользователю. Он работает на сервере, а сервер только: не в веб-браузере.
Javascript – это язык, который в этом случае работает в веб-браузере пользователя. Он обеспечивает базовую интерактивность с тем, какие данные он задает к моменту создания страницы, и не может напрямую взаимодействовать с вашей базой данных. Javascript запускается в веб-браузере и только в веб-браузере: не сервер.
Поскольку база данных находится на сервере, и Javascript не может получить доступ к вещам на сервере, Javascript должен отправить HTTP-запрос для связи с сервером для доступа к базе данных. В этом случае это означает запрос AJAX. Поскольку PHP является вашим языком на стороне сервера, это будет означать создание PHP-скрипта для получения нужного вам из базы данных и помещения его в форму для чтения Javascript, вероятно, используя json_encode
PHP для создания формата и что-то вроде jQuery's $.getJSON
для извлечения и декодирования этих данных.
Все языки, которые мы должны использовать в Интернете, могут сделать несколько сложнее. Возможно, стоит попытаться лучше понять, как работает Интернет, прежде чем приступать к большим проектам … но я желаю вам удачи!
Вы делаете это наоборот. Ваш основной файл – PHP, и парсер PHP интерпретирует это и создает из него HTML-страницу, которая может содержать JavaScript или не содержать JavaScript. Этот файл будет отправлен клиенту, и клиент будет интерпретировать любой JavaScript.
JavaScript = клиентская сторона.
PHP = серверная сторона.
Нет – запрос будет выполняться один раз на сервере, а JavaScript вызовет пустую функцию.
Обратите внимание: вы должны использовать там просто message
, иначе JavaScript eval()
вызывается внутри.
Вам нужно распечатать что-то с помощью php. Я не понимаю, что вы пытаетесь сделать. Вы можете использовать php внутри javascript для templating, но я предлагаю вам использовать ajax.
Я использовал бы функцию jQuerys .ajax () на стороне javascript и echo json_encode($result_array)
на стороне php.