如何解析发布的值?

时间:2011-12-23 01:19:52

标签: php html arrays parsing checkbox

我有以下代码:

<input type="checkbox" name="pay[]"  value="
               <?php 
                         echo $invoiceArr[$record_count].";";
                         echo $TotalArr[$record_count].";";
                         echo $amount_dueArr[$record_count];
                  ?>
                  " onClick="checkTotal()"/>

我该如何解析:

       echo $invoiceArr[$record_count].";";
       echo $TotalArr[$record_count].";";
       echo $amount_dueArr[$record_count];

何时使用POST提交表单?

非常感谢

我怎样才能获得一个元素

   echo $amount_dueArr[$record_count];

并将其传递给:

var elements = document.getElementsByName("pay[]");

感谢队友

4 个答案:

答案 0 :(得分:2)

由于您使用pay[]作为表单名称,我相信您尝试进行阵列表单输入。要读取阵列表单输入,只需使用它的键即可读取它。

一点背景知识:

您可以像这样创建数组:

$data[] = "1";
$data[] = "2";

从上面的代码中,你最终得到的数组$data包含2个元素:

print_r($data);
Array
(
    [0] => 1
    [1] => 2
)

回到你的问题。要解析它,你所要做的就是循环它:

for( $i = 0; $i < count( $_POST['pay'] ); $i++)
{
    $data = $_POST['pay'][ $i ];
    list($invoice, $total, $amount_due) = explode(";", $data);
    echo "Incoive: $invoice || Total: $total || Amount due: $amount_due";
}

答案 1 :(得分:0)

这看似不寻常的做事方式,但你可以通过爆炸来解析它。

list($invoice, $total, $amount_due) = explode(";", $_POST['pay'][0]);

答案 2 :(得分:0)

首先,我会将输入的名称更改为name=pay

然后在php中你会做以下事情:

$data = explode(';', $_POST['pay']);

答案 3 :(得分:0)

var_dump$_GET上执行$_POST,您会看到。
此外,我认为你错误地理解你想做什么。 您需要三个名为pay[]的元素,并且每个元素只有一个您拥有的值

$invoiceArr[$record_count]
$TotalArr[$record_count]
$amount_dueArr[$record_count]