为什么PHP文件无法正确读取javascript?

时间:2019-10-16 21:54:38

标签: javascript php

我正在建立一个网站,并一直试图在PHP文件中编写javascript以创建警报,然后根据用户单击“确定”还是“取消”,将它们带到不同的页面。我有一个应在HTML文件中运行的javascript代码,但是由于某种原因,PHP文件无法读取它。

这用于运行MySQL,PHP,HTML,CSS,javascript和Apache的XAMPP服务器。我尝试将其粘贴到我的PHP文件中,但无法正确读取。

if ($sessioncode != "Admin-placebojoe" || "Mizzy-renegade") {
    loginFail();
} else {
    loginSuccess();
}

function loginFail() {
    var txt;
    var r = confirm("Account does not exist. Either check credentials and try again, or press ok to Sign Up.");
    if (r == true) {
        txt = header("refresh:6; url=Signup.html");
    } else {
        txt = header("refresh:0; url=Login.html");
    }
}

PHP文件拒绝其在第8行显示var txt;的行。错误消息为:

  

解析错误:语法错误,C:\ xampp *****中出现意外的'var'(T_VAR)   在第13行

(我在一开始就省略了几行,这就是第13行的原因)。这告诉我错误是PHP文件无法读取JavaScript。

如何使PHP文件读取并执行所有JavaScript代码?

1 个答案:

答案 0 :(得分:2)

PHP无法读取或执行JavaScript。 JavaScript在浏览器中运行。

如果您在.php文件中包含一个JavaScript块,则PHP将(就像您在.php文件中包含原始HTML或CSS块一样)只是将该代码原样传递给浏览器以作为响应它会提供来自该浏览器的HTTP请求。

但是,如果遇到上述错误,则表示您试图将此代码放入<?php块中。这意味着PHP解释器将尝试在服务器上将其作为PHP代码执行。但是正如您自己说的那样:它不是PHP代码,而是JavaScript。因此,(显然希望如此)PHP解释器无法理解它,并且会出现语法错误。

如果要包括一些要在浏览器中运行的JavaScript代码,请将其移至<?php ... ?>标记之外,然后将其放入<script>块中,例如

<script>
  alert("Hello, World");
</script>

P.S。对于背景知识,您可能需要阅读以下流行且信息丰富的主题:What is the difference between client=side and server-side programming?