Checkbox PHP:获取多个具有不同名称/id的复选框';用php编程

Checkbox PHP:获取多个具有不同名称/id的复选框';用php编程,checkbox,Checkbox,我用了四个小时的时间试图得到一个不同名称的checkbox值,我真的希望你们能帮我解决这个问题。提前谢谢。我的问题是: 我有一个表格,上面有一些问题和备选方案,所有问题都有自己的id,每个备选方案也有自己的id,当然每个备选方案都有一个属于该问题的问题id。我有一张问题表和另一张备选方案表。 例如: 1) 选择一个等式得到20。(假设这个问题得到了问题_id=1) A) 5*4(假设这一个得到备选方案_id=10) B) 6*5(备选方案id=20) C) 100/5(备选方案id=30) D)


我用了四个小时的时间试图得到一个不同名称的checkbox值,我真的希望你们能帮我解决这个问题。提前谢谢。我的问题是:

我有一个表格,上面有一些问题和备选方案,所有问题都有自己的id,每个备选方案也有自己的id,当然每个备选方案都有一个属于该问题的问题id。我有一张问题表和另一张备选方案表。 例如:

1) 选择一个等式得到20。(假设这个问题得到了问题_id=1)

A) 5*4(假设这一个得到备选方案_id=10)
B) 6*5(备选方案id=20)
C) 100/5(备选方案id=30)
D) 4*5(假设这一个得到备选方案_id=40)

当然,上述所有问题都会有疑问_id=1

2) 英俊的同义词是什么?(假设这个问题得到了问题_id=2)

A) 丑陋(假设这一个得到了备选方案_id=40)
B) 美观(备选方案id=60)
C) 好看(可选_id=7)
D) 种类(备选方案编号=5)

当然,上述所有人都会有问题_id=2

现在我的问题是,如何通过问题id获得这些可选id值

让我们从问题编号1=>A、C和D中进行选择(这意味着id为10、30、40) 问题2=>B和C(意思是id,60,7)。 当我点击提交按钮时,我想得到这些值,这里是我正在做的

如果我在复选框表单中使用此选项

print '<input type="checkbox" name="alternative['.$row_q['question_id'].']" value="'.$row['alternative_id'].'">'.$row['alternative'].'</input>';
<input type="submit" name="submit" value="OK" />
我得到的是每个问题的最后选择。在这种情况下,40和7带有钥匙(问题编号), 这意味着40是问题1中备选方案D的id,7是问题2中备选方案C的id

如果我使用的复选框名称没有如下索引:

print '<input type="checkbox" name="alternative[]" value="'.$row['alternative_id'].'">'.$row['alternative'].'</input>';
foreach($_POST['alternative'] as $qid => $question) {
    foreach($question as $altnum => $alternative) {
        // deal with alternatives here
        // using $qid for question ID and $altnum for alternative number
    }
}
所以我通过写作获得了价值

$alt = $_GET['alternative']; in another page.<br>
我想要这样的

ARRAY([1]=>10,30,40  [2]=>60,7  [3]=>89,6,50,30)
然后我想像这样更新问题表(当然
alt\u id
从一开始就是空的)

所以我的问题是如何得到这样的
数组([1]=>10,30,40[2]=>60,7[3]=>89,6,50,30等等……

第二次约会:======================
为了从我的数据库中获取这些值,我使用以下脚本:(我也将向您显示页面):

=============================================================
如果我像你说的那样为问题1的所有字段命名:
name=“alternative[1][]”
然后我得到

1) Chose some equation to get 20

<input type="checkbox" name="alternative[1][]" value="10"/>5*4</input> 
<input type="checkbox" name="alternative[1][]" value="20"/>6*5</input> 
<input type="checkbox" name="alternative[1][]" value="30"/>100/5</input> 
<input type="checkbox" name="alternative[1][]" value="40"/> 4*5</input>  
<hr /><br><br><br>

2 ) What's a synonym of handsome?<br><br>    

<input type="checkbox" name="alternative[1][]" value="50"/>Ugly</input> 
<input type="checkbox" name="alternative[1][]" value="60"/>Fine-looking</input> 
<input type="checkbox" name="alternative[1][]" value="7"/>Good-looking</input> 
<input type="checkbox" name="alternative[1][]" value="5"/>Kind</input> 
<hr />      
<input type="submit" name="submit" value="OK" />
  </form> 
1)选择某个方程式得到20
5*4 
6*5 
100/5 
4*5  




2)英俊的同义词是什么?

丑陋的 好看的 好看的 友善的
如果我为
name=“alternative[][]”的所有字段命名
然后我得到

<input type="checkbox" name="alternative[1][]" value="10"/>5*4</input> 
<input type="checkbox" name="alternative[1][]" value="20"/>6*5</input> 
<input type="checkbox" name="alternative[1][]" value="30"/>100/5</input> 
<input type="checkbox" name="alternative[1][]" value="40"/> 4*5</input>  
<hr /><br><br><br>

2 ) What's a synonym of handsome?<br><br>    

<input type="checkbox" name="alternative[2][]" value="50"/>Ugly</input> 
<input type="checkbox" name="alternative[2][]" value="60"/>Fine-looking</input> 
<input type="checkbox" name="alternative[2][]" value="7"/>Good-looking</input> 
<input type="checkbox" name="alternative[2][]" value="5"/>Kind</input>  
<input type="checkbox" name="alternative[1][10]" value="10"/>5*4</input> 
<input type="checkbox" name="alternative[1][20]" value="20"/>6*5</input> 
<input type="checkbox" name="alternative[1][30]" value="30"/>100/5</input> 
<input type="checkbox" name="alternative[1][40]" value="40"/> 4*5</input>  
<hr /><br><br><br>

2 ) What's a synonym of handsome?<br><br>    

<input type="checkbox" name="alternative[2][50]" value="50"/>Ugly</input> 
<input type="checkbox" name="alternative[2][60]" value="60"/>Fine-looking</input> 
<input type="checkbox" name="alternative[2][7]" value="7"/>Good-looking</input> 
<input type="checkbox" name="alternative[2][5]" value="5"/>Kind</input>   
5*4
6*5 
100/5 
4*5  




2)英俊的同义词是什么?

丑陋的 好看的 好看的 友善的
如果我为
name=“alternative[][]”的所有字段命名
然后我得到

<input type="checkbox" name="alternative[1][]" value="10"/>5*4</input> 
<input type="checkbox" name="alternative[1][]" value="20"/>6*5</input> 
<input type="checkbox" name="alternative[1][]" value="30"/>100/5</input> 
<input type="checkbox" name="alternative[1][]" value="40"/> 4*5</input>  
<hr /><br><br><br>

2 ) What's a synonym of handsome?<br><br>    

<input type="checkbox" name="alternative[2][]" value="50"/>Ugly</input> 
<input type="checkbox" name="alternative[2][]" value="60"/>Fine-looking</input> 
<input type="checkbox" name="alternative[2][]" value="7"/>Good-looking</input> 
<input type="checkbox" name="alternative[2][]" value="5"/>Kind</input>  
<input type="checkbox" name="alternative[1][10]" value="10"/>5*4</input> 
<input type="checkbox" name="alternative[1][20]" value="20"/>6*5</input> 
<input type="checkbox" name="alternative[1][30]" value="30"/>100/5</input> 
<input type="checkbox" name="alternative[1][40]" value="40"/> 4*5</input>  
<hr /><br><br><br>

2 ) What's a synonym of handsome?<br><br>    

<input type="checkbox" name="alternative[2][50]" value="50"/>Ugly</input> 
<input type="checkbox" name="alternative[2][60]" value="60"/>Fine-looking</input> 
<input type="checkbox" name="alternative[2][7]" value="7"/>Good-looking</input> 
<input type="checkbox" name="alternative[2][5]" value="5"/>Kind</input>   
5*4
6*5 
100/5 
4*5  




2)英俊的同义词是什么?

丑陋的 好看的 好看的 友善的
但是我仍然无法将它们作为
数组([1]=>10,30,40[2]=>60,7[3]=>89,6,50,30)
即使我在
foreach循环中使用内爆(','$\u POST['alternative'])运行SELECTION
我想要的是更新问题表中的列alt_id。从一开始就是这样的问题表:
Q\u id问题alt\u id
我选择了一些方程式以获得20个空值
英俊的同义词是什么?空值
3。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。空的

但约会之后,我希望它看起来如下所示:

Q\u id问题alt\u id
我选择了一些方程式得到20 10,30,40

英俊的同义词是什么?60,7
3。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。89,6,50,30

问题在于,给定问题的所有备选字段都具有相同的名称,因此只有最后一个字段被传递到下一页。要正确使用数组表示法,请为问题1命名所有字段。然后在下一页的
$\u帖子
数组中,
备选方案
将是一个数组,其中元素
1
是一个数组,包含您为问题1提交的每个选项

然后,您将使用如下内容在$_POST['alternative']上迭代:

print '<input type="checkbox" name="alternative[]" value="'.$row['alternative_id'].'">'.$row['alternative'].'</input>';
foreach($_POST['alternative'] as $qid => $question) {
    foreach($question as $altnum => $alternative) {
        // deal with alternatives here
        // using $qid for question ID and $altnum for alternative number
    }
}

2美元是多少?设置在哪里?谢谢Octern,我是说$alt而不是$alt2。但是仍然有同样的问题,$alt的确切内容是什么?请使用print_r()显示它。我试图添加注释,并在“添加注释”中编写了代码,但文字写得不好,因此我已经为您添加了一个新问题,标题为“PHP复选框值”。请看一看,我解释得很好,文本看起来不错。再次感谢八月份。不要添加新问题,只需使用此问题下方显示的“编辑”链接。我大约在18小时前编辑过它,但当你说你是指复选框时,对吗?不作为文本键入。因为当我把文本字段从数据库中选出来时,我没有文本字段,所以我把它们放在复选框中。我想的是你在写问题时用来输入选项的代码,而不是用户如何选择选项。我想我帮不了你;这太复杂了,我没有那么多时间花在上面。我认为你需要做更多的调试,并试图找出错误的根源。我同意,单选按钮很容易,因为你从每个问题中只有一个选择。但是我将通过给e插入另一个新表来解决这个问题
1) Chose some equation to get 20

<input type="checkbox" name="alternative[1][]" value="10"/>5*4</input> 
<input type="checkbox" name="alternative[1][]" value="20"/>6*5</input> 
<input type="checkbox" name="alternative[1][]" value="30"/>100/5</input> 
<input type="checkbox" name="alternative[1][]" value="40"/> 4*5</input>  
<hr /><br><br><br>

2 ) What's a synonym of handsome?<br><br>    

<input type="checkbox" name="alternative[1][]" value="50"/>Ugly</input> 
<input type="checkbox" name="alternative[1][]" value="60"/>Fine-looking</input> 
<input type="checkbox" name="alternative[1][]" value="7"/>Good-looking</input> 
<input type="checkbox" name="alternative[1][]" value="5"/>Kind</input> 
<hr />      
<input type="submit" name="submit" value="OK" />
  </form> 
<input type="checkbox" name="alternative[1][]" value="10"/>5*4</input> 
<input type="checkbox" name="alternative[1][]" value="20"/>6*5</input> 
<input type="checkbox" name="alternative[1][]" value="30"/>100/5</input> 
<input type="checkbox" name="alternative[1][]" value="40"/> 4*5</input>  
<hr /><br><br><br>

2 ) What's a synonym of handsome?<br><br>    

<input type="checkbox" name="alternative[2][]" value="50"/>Ugly</input> 
<input type="checkbox" name="alternative[2][]" value="60"/>Fine-looking</input> 
<input type="checkbox" name="alternative[2][]" value="7"/>Good-looking</input> 
<input type="checkbox" name="alternative[2][]" value="5"/>Kind</input>  
<input type="checkbox" name="alternative[1][10]" value="10"/>5*4</input> 
<input type="checkbox" name="alternative[1][20]" value="20"/>6*5</input> 
<input type="checkbox" name="alternative[1][30]" value="30"/>100/5</input> 
<input type="checkbox" name="alternative[1][40]" value="40"/> 4*5</input>  
<hr /><br><br><br>

2 ) What's a synonym of handsome?<br><br>    

<input type="checkbox" name="alternative[2][50]" value="50"/>Ugly</input> 
<input type="checkbox" name="alternative[2][60]" value="60"/>Fine-looking</input> 
<input type="checkbox" name="alternative[2][7]" value="7"/>Good-looking</input> 
<input type="checkbox" name="alternative[2][5]" value="5"/>Kind</input>   
foreach($_POST['alternative'] as $qid => $question) {
    foreach($question as $altnum => $alternative) {
        // deal with alternatives here
        // using $qid for question ID and $altnum for alternative number
    }
}