예 확인란 질문 중 하나입니다. 내 질문을 짧고 이해하기 쉽게 유지하려고 노력하고 있습니다. 약 25 개의 체크 박스가있는 폼을 3 개의 그룹으로 나누었습니다. 각 그룹은 체크 된 각 상자마다 다른 지점을 제공합니다. Group1 = 5 포인트/체크 | 그룹 2 = 8 포인트/체크 | Group3 = 12 점/수표. 내가하고 싶은 것은 제출시 수표의 수를 세고 총점에 모든 것을 더하는 것입니다. 단순한? 새 상자는 언제든지 확인할 수 있습니다. 즉, 총 점수가 올라갈 수 있으며, 확인란을 선택 취소 할 수 없으므로 총 점수를 줄일 수 없습니다. 총 점수는 데이터베이스 테이블에 저장됩니다. 이것은 지금 당장 얻은 것입니다.별로 문제는 아니지만 제 문제에 새로운 시각이 필요합니다. 방정식은 내 머리 속에서 쉽게 보이지만, 나는 그것을 종이에 넣을 수는 없다.데이터베이스의 확인란 증가 값
....5points
<label for="first_name">first point</label>
<input type="checkbox" name="five[]" value="1" <?php if(isset($_POST['five'])) echo 'checked="checked"'; ?> />
<label for="first_name">sec point</label>
<input type="checkbox" name="five[]" value="1" <?php if(isset($_POST['five'])) echo 'checked="checked"'; ?> />
<label for="first_name">n point</label>
<input type="checkbox" name="five[]" value="1" <?php if(isset($_POST['five'])) echo 'checked="checked"'; ?> />
................8points
<label for="first_name">first point</label>
<input type="checkbox" name="eight[]" value="1" <?php if(isset($_POST['eight'])) echo 'checked="checked"'; ?> />
<label for="first_name">sec point</label>
<input type="checkbox" name="eight[]" value="1" <?php if(isset($_POST['eight'])) echo 'checked="checked"'; ?> />
....12points and so on
또한 는 isset의 =으로 점검으로 상자를 절약 임 코드를 확인.
$a =0;
$b =0;
$total;
if(isset($_POST['submitted']))
{
if (isset($_POST['five'])) {
foreach ($_POST['five'] as $five) {
$a + 5;
}
if (isset($_POST['eight'])) {
foreach ($_POST['eight'] as $eight) {
$b + 8;
}
$total=$total+$a+$b;
}
그러나 물론이 트릭을하지 않습니다
, 그것은 단지 또한 내 총은을 추가하지 않으 나에게 5,555,555 및 888888. 등 에코 결과를 제공합니다 이 총 점수의 내 추한 추가되었습니다 같은 점수를 두 번 지금하는 것 같습니다. 누군가이 뇌 맛보기를 나에게 똑바로 도울 수 있습니까?
허 아래, 나는 모든 수를 사용하여 생각하지 않았다으로
$a + 5;
및$b + 8;
을 대체합니다. 좋은 해결책. –대단하군요! 하지만 12 포인트 체크 박스를 선택하지 않으면 값이 정의되지 않습니까? 그리고 또 다른 질문은 페이지를 다시로드 한 후에도 확인란을 선택하고 사용할 수 없습니까? @ Ziarno – Rocksteady
예. 지금 다시로드 한 후 확인하고 사용 중지해야합니다. 예를 들어 '5'확인란을 선택하지 않으면이 배열은 비어 있고 5 * count ($ _ POST [ 'five']) = 0 – Ziarno