PHP传递和接收来自形式二维阵列(PHP pass and receive two dimensio

2019-06-23 16:30发布

我想传递两个配对变量,一个类别,其用于从网络表单来处理一个文件的多个用户创建的类ID。 我想,让他们联系,所以如果有人更改名称字段,我们都清楚,因为这是创纪录的通过ID链接到其他表,他们所作出的修改记录。

最初试图二维数组......已经放弃了这种做法。 现在试图用两个一维数组按照以下建议。 我与阵列会因为形式的条目数量取决于有多少种类用户已创建。 分类表有ID(INT),CAT(文本)和用户ID(INT)领域

困难传递了两个数组是如何将两者结合起来。 如果我通过类别,阵列接收页,我可以通过迭代的值,以产生SQL语句来改变每个条目。 然而,我无法弄清楚如何获得它需要识别记录正确的ID。 如果我使用一个foreach($ idarray为$ ID)在foreach(catsarray为$ VAL)内我将获得每只猫多个ID。 我如何通过IDS迭代中同步通过迭代的猫? 为帮助非常感谢,因为我现在已经花了两天时间在这:(

//I am working with $catsarray and $idarray, each with identical indexes, 1,2,3 etc.
//How do I get appropriate id for each cat
foreach($catsarray as $val) {
$sql = "UPDATE cats, set name = $val WHERE (userid ='$userid' AND id=??????)";
mysql_query($sql);
}

Answer 1:

好与单个语法创建二维阵列;

  <input type="text" name="cat[]" value="cat1">
  <input type="text" name="cat[]" value="cat2">
    ...

当接收猫;

echo $_POST['cat'][0] // echoes cat1
echo $_POST['cat'][1] // echoes cat2

进一步的例子;

根据这个定义,

<input type="text" name="cat[$cat][$id]" value="cat1">

foreach ($_POST['cat'] as $a=>$b){
    // $a == $cat
    foreach($b as $c=>$d) {
       // $c == $id
    }
}


文章来源: PHP pass and receive two dimensional array from form