2017-01-10 1 views
1

동적으로 생성 된 퀴즈 페이지 (mysqli/php/html 사용)를 디자인 중이며 답변을 확인하기 위해 일부 라디오 버튼을 삽입해야합니다. 내가 가지고있는 문제는 루프 안에 라디오 버튼을 인쇄 할 때 제대로 선택을 해제하지 않는다는 것입니다. - 라디오 버튼 4 개를 가지고있는 대신에, 라디오 버튼은 다음과 같이 할당됩니다 : 질문 1) 질문 2와 함께 a) 등등. 아무도이 문제를 해결하는 방법에 대한 아이디어가 있습니까?PHP 퀴즈에서 라디오 버튼을 동적으로 할당해야합니다.

$sql = "SELECT id, descr, a,b,c,d FROM question ORDER BY rand() LIMIT 15"; 
$result = $conn->query($sql); 



if ($result->num_rows > 0) { 
    while($row = $result->fetch_assoc()) { 
     print "<strong>".$row["descr"] ."</strong><br>"; 
     echo "<br>"; 
     echo 'a:'.$row["a"].'<td><cb><input type="radio" name="a" value="$row["a"]"></cb></td>'."<br>"; 
     echo "<br>"; 
     echo 'b:'. $row["b"].'<td><cb><input type="radio" name="b" value="$row["b"]"></cb></td>'."<br>"; 
     echo "<br>"; 
     echo 'c:'.$row["c"].'<td><cb><input type="radio" name="c" value="$row["c"]"></cb></td>'."<br>"; 
     echo "<br>"; 
     echo 'd:'. $row["d"].'<td><cb><input type="radio" name="d" value="$row["d"]"></cb></td>'."<br>"; 
     echo "<br>"; 

    } 

} else { 
    echo "0 results"; 
} 
$conn->close(); 
+1

라디오 버튼이 동일한 이름을 공유하는 경우 하나만 선택할 수 있습니다. 귀하의 경우 모든 질문에 동일한 라디오 버튼 이름이 있습니다 –

답변

0

당신은 같은 라디오 버튼의 이름 속성의 각 질문에 대한 독특한 무언가를 포함해야합니다

<input type="radio" name="a<?= $row['question_number'] ?" /> 

question_number

그냥 몇 가지 필드로 구성되어 있지만이 고유 뭔가해야 각 질문. 이 같은 결과 것 : 각 질문에 라디오 버튼 그룹 같은 이름과 값이 다른, 당신을 제출, 따라서 생성

if ($result->num_rows > 0) { 
    while($row = $result->fetch_assoc()) { 
     print "<strong>".$row["descr"] ."</strong><br>"; 
     echo "<br>"; 
     echo 'a:'.$row["a"].'<td><cb><input type="radio" name="q'.$row["id"].'" value="a"></cb></td>'."<br>"; 
     echo "<br>"; 
     echo 'b:'. $row["b"].'<td><cb><input type="radio" name="q'.$row["id"].'" value="b"></cb></td>'."<br>"; 
     echo "<br>"; 
     echo 'c:'.$row["c"].'<td><cb><input type="radio" name="q'.$row["id"].'" value="c"></cb></td>'."<br>"; 
     echo "<br>"; 
     echo 'd:'. $row["d"].'<td><cb><input type="radio" name="q'.$row["id"].'" value="d"></cb></td>'."<br>"; 
     echo "<br>"; 

    } 

} else { 
    echo "0 results"; 
} 

이 방법 : 수행

Question 1:  
<input type="radio" name="a1" /> 
<input type="radio" name="b1" /> 
<input type="radio" name="c1" /> 
<input type="radio" name="d1" /> 

Question 2: 
<input type="radio" name="a2" /> 
<input type="radio" name="b3" /> 
<input type="radio" name="c4" /> 
<input type="radio" name="d5" /> 
+0

문제는 해결되었지만 이제는 질문과 대답이 나타나지 않습니다. echo "". $ nr. $ row [ "descr"]. "
"; \t \t 에코 "
"; \t \t echo 'a :'. $ row [ "a"]. ' '. "
"; \t \t 에코 "
"; – Mircea

+0

내 사과 - 내 대답의 코드는 코드를 대체하는 대신 기존 코드를 수정하는 방법을 보여주는 예제입니다. 찾으려는 부분은'name ='속성입니다. –

0

다음 예 : $_GET["qXXX"]을 확인하여 XXX 질문에 대한 대답 (예 : a, b, c 또는 d)을 결정할 수 있습니다.

관련 문제