我有一个复选框列表,可以选择一些有限的复选框。为此我设置所有它们的名称attr“回答”以正确使用js功能(我从某些地方获得了功能)。
<?php
else if($result['type'] == "multipleChoice"){
echo'
<div><input type="checkbox" name="answer ans1" value="'.$res['probAns1'].'"/><input type="text" class="prob-ans" name="prob-ans1" value="'.$res['probAns1'].'"/><lable>:گزینه 1</lable></div>
<div><input type="checkbox" name="answer ans2" value="'.$res['probAns2'].'"/><input type="text" class="prob-ans" name="prob-ans2" value="'.$res['probAns2'].'"/><lable>:گزینه 2</lable></div>
<div><input type="checkbox" name="answer ans3" value="'.$res['probAns3'].'"/><input type="text" class="prob-ans" name="prob-ans3" value="'.$res['probAns3'].'"/><lable>:گزینه 3</lable></div>
<div><input type="checkbox" name="answer ans4" value="'.$res['probAns4'].'"/><input type="text" class="prob-ans" name="prob-ans4" value="'.$res['probAns4'].'"/><lable>:گزینه 4</lable></div>
';
?>
首先,为name attr设置两个值是正确的。我做到了但没有奏效。喜欢第二个值是不可接受的。 如果不是我怎么能指定它们,如果我只是名字=“答案”?我想在php中设置一些值,如果设置了其中一个复选框。
<?php
if($result['type'] == "multipleChoice"){
$question->probAns1 = mysql_real_escape_string($_POST['prob-ans1']);
$question->probAns2 = mysql_real_escape_string($_POST['prob-ans2']);
$question->probAns3 = mysql_real_escape_string($_POST['prob-ans3']);
$question->probAns4 = mysql_real_escape_string($_POST['prob-ans4']);
if(isset($_POST['ans1'])){
$question->answer1 = $_POST['prob-ans1'];
}
}
?>
答案 0 :(得分:0)
不,你不能像你那样拥有两个名字。然而,以下是可能的:
<input type="checkbox" name="answer[]" value="abc" />
<input type="checkbox" name="answer[]" value="def" />
您的$_POST
将如下所示(如果两者都已选中):
array(
'answer' => array(
0 => 'abc',
1 => 'def'
)
)
您还可以指定数组键,因此name="answer[answ1]" value="abc"
会为您提供$_POST['answer']['answ1'] == 'abc'
答案 1 :(得分:-2)
以下是link您需要做的事情。
在一个句子中,您需要使用html元素数组。