0
else
이 아닌 명령문에 해당하는 경우 if/elseif/else
문을 루프 할 수 있기를 원합니다.완료하려면 if/elseif/else를 반복하십시오.
$names
은 사용자가 선택할 몇 개의 이름을 가진 배열입니다.
지금은 코드가 작동하지만 조건이 elseif
중 하나에 속하면 루프가 중지됩니다. 사용자의 관점에서 볼 때 아무 일도 일어나지 않았을 것입니다. 당신이 $names
에있는 이름 중 어느 것도이 이전 같은 위치에 없을 때까지 셔플을 유지하려면 같은
if($names[0] == $poster) {
shuffle($names);
} elseif($names[1] == $entertainer) {
shuffle($names);
} elseif($names[2] == $tunar) {
shuffle($names);
} elseif($names[3] == $keeper) {
shuffle($names);
} elseif($names[4] == $feeder) {
shuffle($names);
} elseif($names[5] == $provider) {
shuffle($names);
} else {
echo "This week's roles are:";
while($row = mysqli_fetch_assoc($this_week_result)) {
$poster = $row['poster'];
$entertainer = $row['entertainer'];
$tunar = $row['tunar'];
$keeper = $row['keeper'];
$feeder = $row['feeder'];
$provider = $row['provider'];
}
echo $names[0] . " is the Poster <br>";
echo $names[1] . " is the Entertainer <br>";
echo $names[2] . " is the Tunar <br>";
echo $names[3] . " is the Keeper <br>";
echo $names[4] . " is the Feeder <br>";
echo $names[5] . " is the Provider <br>";
$sql = "INSERT INTO funroles
(poster,entertainer,tunar, keeper, feeder, provider, date)
VALUES ('$names[0]','$names[1]','$names[2]','$names[3]','$names[4]','$names[5]','$date')";
$result = mysqli_query($conn, $sql);
mysqli_close($conn);
}
대신 switch 문을 사용하여 재귀 함수를 만들 수 있습니까? – Dimi
나는 아무것도 이해하지 못했고, 더 자세히 설명해 주시겠습니까 –
왜이 태그가 mysql입니까? – shmosel