我不确定是否可以在JavaScript函数中运行PHP系列。例如:
<script language=javascript>
var int=self.setInterval("message()",1000);
function message()
{
<?PHP mysql_query("SELECT * FROM example"); ?>
}
</script>
我没有试过运行它,但我认为你不能像这样运行PHP。有谁可以帮忙。我可以在javascript函数中以某种方式运行PHP脚本,而无需通过Ajax调用外部PHP文件吗?
答案 0 :(得分:12)
让我们谈谈基本面:)
PHP是一种语言,在这种情况下,可以在您的Web服务器上运行。它生成人们看到的网页,并且所有PHP代码在页面发布给用户时已经完成。它仅在服务器和服务器上运行:而不是Web浏览器。
Javascript是一种语言,在这种情况下,可以在用户的Web浏览器上运行。它提供了与页面创建时给出的数据的基本交互性,并且无法直接与数据库交互。 Javascript仅在Web浏览器和Web浏览器上运行:不是服务器。
由于数据库在服务器上,并且Javascript无法访问服务器上的内容, Javascript必须发送HTTP请求才能与服务器通信以访问数据库。在这种情况下,这意味着一个AJAX请求。由于PHP是您的服务器端语言,这意味着创建一个PHP脚本来从数据库中获取您需要的内容,并将其放在Javascript中以便读取的形式,可能使用PHP的json_encode
来生成格式和类似jQuery的$.getJSON
来获取和解码数据。
我们必须在网络上使用的所有不同语言都会让事情变得有点棘手。在开始大项目之前,可能值得尝试更好地了解网络的运作方式......但我祝你好运!
答案 1 :(得分:5)
你正好相反。你的主文件是PHP,PHP解析器将解释它并从中创建一个HTML页面,它可能包含也可能不包含JavaScript。该文件将被发送到客户端,然后客户端将解释任何JavaScript。
JavaScript =客户端。
PHP =服务器端。
答案 2 :(得分:2)
否 - 查询将在服务器上运行一次,JavaScript将调用一个空函数。
注意,您应该只使用message
,否则将在内部调用JavaScript的eval()
。
答案 3 :(得分:1)
你需要用php打印一些东西。我不明白你想做什么。您可以在javascript中使用php进行模板化,但我建议您使用ajax。
我会在javascript端使用jQuerys .ajax()函数,在php端使用echo json_encode($result_array)
。