试图从表单中提取响应

时间:2015-04-01 04:33:27

标签: php html

所以最近我试图在你点击一个按钮时拉出所有的回复,以便向你显示你放置的内容。在PHP中的方法中使用以下行我试图拉动它并中继信息。因此,它不适合我。

PHP方法

function results(){
    $responses = $_POST['test'];
    foreach($responses as $response){
      print "".$response." <br />";
    }
}

FORM TAG

<form id="test" name="test">

按钮

  <button type="button" onclick="results()">
    Complete
  </button>

2 个答案:

答案 0 :(得分:0)

你的Post键将绑定到表单中的参数,而不是表单本身

<强> HTML

<form id="test" name="test">
    <input type="text" name="somfield" />
    <button type="button" onclick="results()"> Complete </button>
</form>

会像

那样访问

<强> PHP

function results(){
    $response = $_POST['someField'];
}

所以要做你想要的只是循环POST的所有键

foreach($_POST as $name => $value) {
    print "$name : $value<br>";
}

应该这样做。

答案 1 :(得分:0)

您无法使用onlick属性调用PHP函数。虽然你可以做这个来解决这个问题。

if(isset($_POST['submit']))
   {
       function results(){
          $somevar =  $_POST['sometext'];

       } 
   }

和你的HTML

<form method="post" action="">
    sometext : <input type="text" name="sometext" /> 
    <input type="submit" name="submit" />
</form>

将您的操作属性留空将使页面在提交时自行加载,同时设置输入提交按钮。激活isset条件。

最后,我不知道你是如何完成输入的,但我看到你使用循环来获得结果。据我所知,没有html输入字段有数组输入。也许你可以做到这一点。

<input type="text" name="response1">
<input type="text" name="response2">
<input type="text" name="response3">
<input type="text" name="response4">

并迭代这个。

<?
    for($i=1;$i>4;$i++)
    {

      $response = "response".$i;
      echo $_POST[$response];
    }
?>