如何在提交前从表单中获取价值

时间:2015-06-19 11:41:00

标签: php

我希望在其操作重定向之前从表单中获取值。 例如,在这种形式,我想抓住“text_one”并将其发送到数据库,然后再将其重定向到谷歌。我也想在google中使用“text_one”。我该怎么办?

<form method="post" action="google.com">
  <input type="text" name="text_one">
  <input type="submit">
</form>

5 个答案:

答案 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>