所以我想在同一个表单上使用GET方法和POST方法。 GET将表单中的详细信息发送到url栏和isset if语句,以检查表单是否已提交。我希望能够做到这一点。但如果你能找到另一种方法,请告诉我 HTML
<form method="post">
<p>Username:</p><input type="text" name="Username">
<p>Password:</p><input type="password" name="Password">
<p>Post:</p><input type="text" name="Post" value=""><br><input type="submit"
value="submit" name="submited">
</form>
PHP
if (isset($_POST['submited'])){
$Username=$_GET["Username"];
$Password=$_GET["Password"];
$Post=$_GET["Post"];
$Password=md5($Password);
if(blah=blah){
echo "blah";
}
}
答案 0 :(得分:0)
更改
isset($_POST['submited'])
到
isset($_GET['submited'])
但使用GET发送密码是一个非常糟糕的主意。
答案 1 :(得分:0)
有点不好的做法,但你可以通过在URL中发送参数强制它:
action="index.php?data=123"
之类的设置应该可以完成工作:
<form method="post" action="index.php?name=a&surname=b"> //Here we go
<p>Username:</p><input type="text" name="Username">
<p>Password:</p><input type="password" name="Password">
<p>Post:</p><input type="text" name="Post" value="">
<br>
<input type="submit" value="submit" name="submited">
</form>
答案 2 :(得分:0)
在你的表单中你可以改变它的动作 - 所以action =“?var1 = something&amp; var2 = example”
可以用javascript完成;例如:
<!doctype html>
<html>
<head>
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('form').submit(function() {
$('form').attr('action','?Username=' + $('input[name=Username]').val() + '&Password=' + $('input[name=Password]').val() + '&Post=' + $('input[name=Post]').val());
return true;
});
});
</script>
</head>
<body>
<form method="post">
<p>Username:</p><input type="text" name="Username">
<p>Password:</p><input type="password" name="Password">
<p>Post:</p><input type="text" name="Post" value=""><br><input type="submit"
value="submit" name="submited">
</form>
</body>
</html>
答案 3 :(得分:0)
我个人会发布表格来说出我的formprocess.php页面,放置你的
if(isset($_POST['submitted'])) {
//Code goes here, do checks/validation etc
}
然后,一旦您完成了对代码所需的操作,请执行标题(如果您已经发送了标题,则执行元重定向),如下所示:
header('Location:http://www.mysite.com/index.php?value=formsubmitted&action=success');
因此value =和action =可能只是您要在URL中传回的值。你也可以在你的.htaccess中添加一些RewriteRule来使这些重定向的URL更漂亮,更适合SEO等。另外如果你确实沿着这条路线走,请确保设置/定义重定向状态,即301见下文:< / p>
header("HTTP/1.1 301 Moved Permanently");
答案 4 :(得分:0)
我认为每个人都在想,为什么有人需要使用$ _GET,如果他们使用$ _POST。 即:
if (isset($_POST['submited'])){
$Username=$_POST["Username"];
$Password=$_POST["Password"];
$Post=$_POST["Post"];
$Password=md5($Password);
if(blah=blah){
echo "blah";
}
}
...如果你想在开发时检查你的参数... ...
print_r($_POST)
是否有任何理由需要从$ _GET中检索表单字段数据?