PHP:解析给定的表单输入变量

时间:2011-01-16 18:35:26

标签: php

我如何解析传入的表单数据,其中名称根据网站的部分而变化,如:

<input type="radio" name="Motorola section" value="Ask a question">

其中'摩托罗拉部分可能是那个,或Verizon部分,或黑莓部分等。

遗憾的是,我无法控制更改现有表格,因此必须找到一种方法来处理现有的表格。

基本上,我需要能够同时获取name =“”数据及其相应的value =“”数据,以便能够填充正确发送的电子邮件。

3 个答案:

答案 0 :(得分:2)

好吧,您没有收到HTML表单,只是$_POST中的字段名称和值。所以你必须看看从中得到什么。

从$ _POST获取已知和固定字段以及unset()您已经[简化]的字段。然后迭代其余部分。如果" section"是唯一的常数,那么请注意:

foreach ($_POST as $key=>$value) {
    if (stristr($key, "section")) {
        $section = $value;
        $section_name = $key;
    }
}

如果有多个部分(您没有说),那么请构建一个section =&gt; value数组。

答案 1 :(得分:0)

<form action="formpage.php" method="post">
<input type="radio" name="Motorola_section" value="Ask a question">


</form>
$motorola = $_POST['Motorola_section'];
if ($motorola =='Ask a question')
{
form submit code if motorola is selected
}

答案 2 :(得分:0)

嗯,首先,您不应该在名称字段中包含空格(即使它应该与它们一起使用)。

假设它是一个表单,您可以通过$ _POST(对于POST方法)和$ _GET(对于GET方法)变量获取值。

<?php
if ( isset( $_POST['Motorola section'] ) ) // checks if it's set
{
   $motoSec = $_POST['Motorola section'];  // grab the variable
   echo $motoSec; // display it
}
?>

您还可以使用print_r($ _GET)或print_r($ _POST)检查变量。