为什么我的JavaScript不会从php运行


Why will my javascript no run from php?

我正在制作一个基本的登录Web应用程序,我正在使用php中的echo函数来运行一些javascript来提醒用户他们的用户名/密码不正确,以便于做某事,而不仅仅是转到主索引.php文件,表单框中没有文本。由于某种原因,我的警报没有出现,但我被重定向到我的索引.php。我不知道为什么会这样?

///

这是只有一半在运行的代码///

echo 
    '<script type="text/javascript">'
    ,'alert("a");'
    ,'</script>'
;
header("Location: /");

?>

有人可以告诉我我是否有任何语法错误或任何错误吗?

提前谢谢你 -mjacob652


索引.php的身体

<div id="header">
<h1> Welcome to S.O.G <br/> Specials Operations Gaming </h1>
</div>
<div id="wrapper">
<h2> Please Log In </h2>
<form id="form" action="/Account/php/login.php" method="post" enctype="multipart/form-data">
    Username: <input type="text" name="username"/> <br/>
    Password: <input type="password" name="password"/> <br/>
    <input id="submit" type="submit" value="Login" name="submit"/>
</form>

登录.php只有SQL的东西,回显和标题

作为一个简单快速的解决方法:

echo 
    '<script type="text/javascript">'
    ,'alert("a"); window.location.href = "/";'
    ,'</script>';

这样,用户将在对话框弹出窗口关闭后立即重定向alert

为什么我的 JavaScript 不会从 php 运行?

想象一下,你在一个 php 脚本中,每次加载时都会重定向到自身。

铬会给你

重定向你太多次了。ERR_TOO_MANY_REDIRECTS

而在莫斯拉

Firefox 检测到服务器正在重定向请求 此地址永远不会完成。


有人可以告诉我我是否有任何语法错误或任何错误吗 完全?

当然,您没有任何语法错误,只是当前代码中的重定向是无限的。

php 代码中的所有内容都将首先运行,因为我们请求服务器,因此服务器将首先翻译服务器代码,以便它可以返回。 但是服务器将转换回声,然后满足标头,因此它将重定向而不回显任何内容