我有以下html文件:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Fancy Website</title>
</head>
<body>
<div id="content_login">
<form method="post" action="app.php">
<table>
<thead>Please Login for more fancy Content!</thead>
<tr>
<td>Username</td>
</tr>
<tr>
<td><input type="text" name="username"></td>
</tr>
<tr>
<td><input type="submit" name="login" value="Login"></td>
</tr>
</table>
</form>
</div>
</body>
</html>
这是我的php脚本:
<?php
if(isset($_POST['login'])) {
echo "Hello " . $_GET["username"];
}
?>
是的,没什么,但我只想测试,如果按下登录按钮时脚本可以工作。惊喜:不是。我在浏览器中打开index.html并且html部分正常工作,但是如果我按下登录按钮,浏览器会显示我:
<?php
if(isset($_POST['login'])) {
echo "Hello " . $_GET["username"];
}
?>
我想这是一个语法问题,但我无法找到它。也许你看到了。 非常感谢!
答案 0 :(得分:1)
你应该将$ _GET [“username”]更改为$ _POST [“username”]变量才能正常工作
<?php
if(isset($_POST['login'])) {
echo "Hello " . $_POST["username"];
}
?>
答案 1 :(得分:1)
我的建议是使用:
ab_xyz_co
老实说,我会将index.html更改为index.php并将其放在该页面的顶部,以便所有错误等都通过一个文件传递。
答案 2 :(得分:0)
你有app.php中的php代码吗?如果你有,那么你没有在Apache中启用mod_php。我建议你使用wampserver(在Windows上),因为它负责基本的apache / php配置。
编辑:如果没有网络服务器,你不能只执行你的PHP代码。在浏览器中打开HTML文件是客户端,php是服务器端。答案 3 :(得分:0)
首先,我认为您没有运行apache服务器来使您的PHP代码正常工作。 并且您使用POST no GET发送数据,您必须使用POST方法来处理数据。
<?php
if(isset($_POST['login'])) {
echo "Hello " . $_POST["username"];
}
?>