我在HTML中使用此代码表示
<div class="login-wrapper">
<form>
<div class="popup-header">
<span class="text-semibold"><i class="fa fa-sign-in"></i> Logging in</span>
</div>
<div class="well">
<div class="form-group has-feedback">
<label>Username</label>
<input type="text" name="user" class="form-control" placeholder="e.g. andre@mail.de">
<i class="icon-users form-control-feedback"></i>
</div>
<div class="form-group has-feedback">
<label>Password</label>
<input type="password" name="password" class="form-control" placeholder="Password">
<i class="icon-lock form-control-feedback"></i>
</div>
<div class="form-group has-feedback">
<label>reCaptcha</label>
<div class="g-recaptcha" data-sitekey="..."></div>
</div>
<div class="form-actions text-right">
<input type="submit" id="loginbutton" name="loginbutton" value="Login" class="btn btn-primary">
</div>
</div>
</form>
</div>
<!-- /login wrapper -->
但是,当我按下提交按钮时,它只会在浏览器的地址栏中给我一个非常奇怪的网址:
http://localhost/?user=&password=&g-recaptcha-response=&loginbutton=Login
每当我填写字段时,都会将内容放入网址:
http://localhost/?user=peter%40griffin.com&password=somepass&g-recaptcha-response=&loginbutton=Login
按下按钮时应该运行的预期PHP代码甚至不会运行或加载,因为这个HTML东西显然搞砸了。我不知道我做错了什么。有什么建议吗?
答案 0 :(得分:0)
为了让表单在其他地方提交,您需要设置表单元素action
参数。
<form action="some_file.php">
或者,您可以获取查询字符串并将其直接附加到文件路径以测试脚本。
http://localhost/some_file.php?user=peter%40griffin.com&password=somepass&g-recaptcha-response=&loginbutton=Login
在some_file.php中,您将提取每个变量,如
$user = $_GET['user'];
$password = $_GET['password'];
答案 1 :(得分:0)
非常奇怪的网址 实际上是 GET 请求的结果。
参数由&amp; 分隔,因此您拥有:
用户=彼得%40griffin.com&安培;密码= somepass&安培; G-验证码 - 响应=
“用户”是您输入的名称属性,“peter%40griffin.com”是值
首先,您需要使用 action =“save.php”属性将表单发送到某个操作,例如使用 method =“POST”传递参数,因此用户无法看到URL中的值。
<form action="save.php" method="post">