PHP支持:
<input type=text name=array[]>
...并且所有值都只是在该数组中发布。我想为多维做同样的事情?数组,但是在尝试提取数据方面我有点迷失。
我有一组问题,大多数都有一个答案(单选按钮),但有些是多响应(复选框)。我希望能够将所有答案存储在一个多维数组中,因此它可能如下所示:
问题1 |回答|所以,我这样做:
<input name="response['q1'][]" type=text value=''>
<input name="response['q2'][]" type=text value=''>
<input name="response['q3'][]" type=text value=''>
<input name="response['q3'][]" type=text value=''>
现在我该如何提取这些数据以存储到我的mysql数据库中。我一直在玩一个foreach,但是在这种情况下,一个问题有多个答案(q3可以说)我无法在循环中获取这些数据。
答案 0 :(得分:0)
尝试离开引号(name =“response [q3] []”)然后使用foreach($_POST['response']['q3'] as $key => $value) { echo $value."\n"; }
foreach($_POST['response'] as $question => $answer) {
if(count($answer) > 1) {
foreach($answer as $key => $value) {
//loop your multiple answers here
}
} elseif(count($answer) == 1 {
// 1 answer found for $_POST['response'][ $question ];
} else {
// no answer found.. (perhaps $_POST['response'][ $key ] is a value and no array.
}
}
我想这就是你要找的东西。