>  Q&A  >  본문

PHP 및 mysql에서 체크박스를 사용하여 행을 삭제하는 방법

<p>데이터베이스 정보로 테이블을 만들고 행을 더 쉽게 삭제할 수 있도록 확인란을 만들어 보았지만 뭔가 작동하지 않습니다. </p> <p>다음 형식의 버튼이 있습니다. </p> <pre class="brush:php;toolbar:false;"><form action="delete-register.php" method="post"> <버튼 유형="버튼" 클래스="btn btn-primary"><span class="fe fe-file-plus fe-12 mr-2"></span>새로 만들기</ 버튼> <버튼 유형="제출" name="삭제" class="btn btn-secondary">span class="fe fe-trash fe-12 mr-2></span> ;삭제 <p>체크박스가 있는 행이 있습니다: </p> <pre class="brush:php;toolbar:false;"><form action="delete-register.php" method="post"> <td> <div class="custom-control custom-checkbox"> <입력 유형="checkbox" class="custom-control-input"<?php echo $row['id'] ?>" value="<?php echo $row['id'] ?>"> <label class="custom-control-label" for="<?php echo $row['id'] ?>></label> </div> </td> <p>delete-register.php:</p> <pre class="brush:php;toolbar:false;">if (isset($_POST['delete'])) { if (isset($_POST['selected'])) { foreach ($id로 $_POST['selected']) { $query = "ID = $id인 WHERE FROM 레지스터에서 삭제";; mysqli_query($conn, $query); } header('위치: Registers.php'); 출구; } }</pre> <p>문제는 "선택됨"이 항상 비어 있으므로 데이터베이스에서 아무것도 삭제되지 않는다는 것입니다. 이 문제를 어떻게 해결할 수 있나요? </p>
P粉982009874P粉982009874436일 전559

모든 응답(1)나는 대답할 것이다

  • P粉006540600

    P粉0065406002023-09-02 18:45:55

    제출된 데이터는 <form>....</form>

    범위 내에 있음을 유의하시기 바랍니다.

    두 개의 양식이 있으므로 첫 번째 양식에서 제출 버튼을 클릭하면 두 번째 양식의 데이터가 서버로 전송되지 않습니다.

    두 번째 형식을 다음과 같이 변경하세요.

    으아악

    [추가 설명]

    첫 번째 양식을 그대로 사용하여 삭제를 실행하려면 다음을 수행하세요.

    1. 첫 번째 양식에서 삭제를 "제출"에서 "버튼"으로 변경하세요
    2. 이 삭제 버튼에 onclick 이벤트를 추가하면 두 번째 양식 제출이 트리거됩니다
    3. PHP 스크립트에 이 필드를 포함하도록 지정했으므로 두 번째 양식에 "삭제"라는 숨겨진 필드가 있는지 확인하세요
    4. form1에 의한 제출 트리거를 용이하게 하기 위해 두 번째 양식에 id=form2를 추가한 것을 눈치채셨을 것입니다

    수정된 코드는 다음과 같습니다.

    으아악

    회신하다
    0
  • 취소회신하다