2014-02-13 44 views
3

我有一个窗体,发送所有数据与jQuery .serialize()在窗体中有四个arrays qty[], etc它发送表单数据到sendMail页面,我想从数组中返回发布的数据。检索后数组值

我曾尝试:

$qty = $_POST['qty[]']; 
foreach($qty as $value) 
{ 
    $qtyOut = $value . "<br>"; 
} 

并试用了此:

for($q=0;$q<=$qty;$q++) 
{ 
$qtyOut = $q . "<br>"; 
} 

这是正确的做法?

+1

尝试用'$ qty = $ _POST ['qty'];' –

回答

3

您在$_POST变量内有[] - 这些不是必需的。您应该使用:

$qty = $_POST['qty'];

您的代码将被:

$qty = $_POST['qty']; 

foreach($qty as $value) { 

    $qtyOut = $value . "<br>"; 

} 
0

PHP处理嵌套数组很好

尝试:

foreach($_POST['qty'] as $qty){ 
    echo $qty 
} 
2

PHP自动检测$ _ POST$ _GET -arrays这样你就可以JUSE:

<form method="post"> 
    <input value="user1" name="qty[]" type="checkbox"> 
    <input value="user2" name="qty[]" type="checkbox"> 
    <input type="submit"> 
</form> 

<?php 
$qty = $_POST['qty']; 

$数量将由PHP阵。现在,您可以通过访问:

if (is_array($qty)) 
{ 
    for ($i=0;$i<size($qty);$i++) 
    { 
    print ($qty[$i]); 
    } 
} 
?> 

,如果你不能确定接收到的数据结构的格式,你可以使用:

print_r($_POST['qty']); 

甚至

print_r($_POST); 

怎么看它被存储。

+0

准确。值得注意的一点是:不要忘记用HTML输入名称中的[]。我忘了这个,我浪费了几个小时的生活。 –