我希望在其操作重定向之前从表单中获取值。 例如,在这种形式,我想抓住“text_one”并将其发送到数据库,然后再将其重定向到谷歌。我也想在google中使用“text_one”。我该怎么办?
<form method="post" action="google.com">
<input type="text" name="text_one">
<input type="submit">
</form>
答案 0 :(得分:2)
试试这个......
<form method="post" onsubmit="return getdata()" action="google.com">
<input type="text" name="text_one" id="text_one">
<input type="submit">
</form>
<script>
function getdata(){
var txtOne = document.getElementById('text_one').value;
// Do Something
}
</script>
答案 1 :(得分:1)
您可以将操作更改为&#34; yourscript.php&#34;并做s.th.像:
<?php //yourscript.php
//save $_POST['text_one'] to Database
header('Location: http://google.com');
?>
或者你可以拨打&#34; yourscript.php&#34;用ajax在后台完成它。
答案 2 :(得分:0)
试试这个:
echo (isset($_POST['text_one']) ? $_POST['text_one'] : '');
或使用 Ajax Ajax是您的问题的答案
答案 3 :(得分:0)
对于纯PHP解决方案,您可以使用@ v.eigler提出的想法。为了向Google服务器(或您想要的服务器)创建POST请求,您只需要使用某个库来发出HTTP请求,我强烈建议您查看Guzzle library。< / p>
使用它应该很容易,您只需要将表单处理重定向到您拥有的脚本,进行自己的处理,然后创建到真实目的地的HTTP帖子。
答案 4 :(得分:-1)
我做的很简单。 我更改了表单操作处理程序。
<form method="post" action="yourscript.php">
<input type="text" name="text_one">
<input type="submit">
</form>
现在,是时候处理服务器端了。我已经发表评论以供解释。
<!-- yourscript.php -->
<?php
echo $_POST['text_one'];
// also do required server side operation.
?>
<!-- note: Action part is google.com -->
<form id="myform" method="post" action="google.com">
<!-- Note: value of input already set.-->
<input type="text" value=<?php echo $_POST['text_one'];" ?> name="text_one">
<input type="submit">
</form>
<script language="JavaScript">
// submit your form as soon as page loaded.
document.myform.submit();
</script>