【问题标题】:Parse an array in php posted by an html form解析由 html 表单发布的 php 中的数组
【发布时间】:2014-04-02 17:25:27
【问题描述】:

我有以下问题。 我的表单中有这些类型的选择:

<select name="variation[8][]" multiple>
   <option value="1">s</option>
   <option value="2">m</option>
   <option value="3">l</option>
</select>

<select name="variation[9][]" multiple>
   <option value="8">red</option>
   <option value="9">blue</option>
   <option value="10">black</option>
</select> 

我想用 php 正确读取发布的数组,我想把它写到数据库中:

variation_id => 8 
variation_term => 1 
variation_id => 8 
variation_term => 2 
variation_id => 8 
variation_term => 3 

variation_id => 9 
variation_term => 8 
variation_id => 9 
variation_term => 9 
variation_id => 9 
variation_term => 10

如何解析发布的这个数组? 有更好的方法吗?

TNX

我找到了这个解决方案:

foreach ($_POST['variation'] as $key => $value) {
   for($i=0; $i<count($value); $i++){
     echo "varitaion name = $key"."<br>";
     echo "value = $value[$i]";
   }
}

【问题讨论】:

  • 你想从 POST 数组中获取值吗?
  • 是但没有一个简单的帖子数组 name="variable[]" 但来自 name="variable[8][]" 因为我需要知道该选择的值和选择变量[NAME] .所以在我的数据库中我会写下变量的名称 => 8 Example。变体=>8 值=>1 变体=>8 值=>2 如果我有另一个 SELECT 变体=>9 值=>10 变体 =>8 值=>15

标签: php html mysql arrays forms


【解决方案1】:

试试

foreach($_POST['variation'] as $key=>$val){
  if(is_array($val)){
     echo " Values for $key Are:"; // get your variation index eg:8,9 etc
     foreach($val as $key1=>$val1){
         echo $val1.","; // get the index values
     }
         echo "<br/>";
  }
}

【讨论】:

  • 完美运行!我做了一个类似的解决方案,我已经编辑了我的问题!非常感谢!
猜你喜欢
  • 2016-10-08
  • 1970-01-01
  • 2014-09-11
  • 1970-01-01
  • 1970-01-01
  • 2011-10-07
  • 1970-01-01
  • 1970-01-01
  • 2014-06-24
相关资源
最近更新 更多