테스트 사이트 - 개발 중인 베타 버전입니다

회원 필드 mb_10에 값을 받고 있는데 조언좀 구해보아요 채택완료

헛둘헛둘 2년 전 조회 2,704

회원 여분필드 mb_10을 이용해서 , on과 off라는 회원데이터를 입력받고 있어요

홈페이지 메인 head.php 에서는 문제없이 mb_10에 데이터 입력을 잘 받고 잘 작동하고 있어요.

 

그런데 head에서 자리를 옮겨

mypage.skin.php에다가 코드를 넣게되면 mb_10 필드에 데이터가 안들어옵니다.

mypage.skin.php 에서는 추가 수정이 있어야하는지 잘 몰라서 조언좀 구해봅니다

혹시 변수가 문제일까요? 

 

 

</p>

<p><form method="post" action="<?php echo $g5['path'] ?>/bbs/update_mb_10.php">

    <div class="form-group">

        <label for="mb_10">mb_10 회원 필드</label>

        <input type="hidden" id="mb_10" name="mb_10" value="<?php echo $member['mb_10']; ?>">

        <button type="button" id="toggle_mb_10"><?php echo ($member['mb_10'] == 'off') ? '꺼짐' : '켜짐'; ?></button>

    </div>

</form></p>

<p>

 

 

</p>

<p><script>

    // 페이지가 로드될 때 초기 버튼 레이블 설정

    window.onload = function () {

        var mb10Button = document.getElementById("toggle_mb_10");

        var mb10Input = document.getElementById("mb_10");

        mb10Button.innerHTML = (mb10Input.value === "off") ? '꺼짐' : '켜짐';

    };

    var mb10Button = document.getElementById("toggle_mb_10");

    var mb10Input = document.getElementById("mb_10");

    

    // 클릭 이벤트 핸들러

    mb10Button.addEventListener("click", function () {

        // 현재 mb_10 값 확인

        var currentMb10Value = mb10Input.value;

        // "켜짐"과 "꺼짐"을 토글합니다.

        if (currentMb10Value === "off") {

            mb10Input.value = "on";

            mb10Button.innerHTML = '켜짐';

        } else {

            mb10Input.value = "off";

            mb10Button.innerHTML = '꺼짐';

        }

        // AJAX 요청

        var formData = new FormData(document.forms[0]);

        var xhr = new XMLHttpRequest();

        xhr.open("POST", "<?php echo $g5['path']; ?>/bbs/update_mb_10.php", true);

        xhr.onreadystatechange = function () {

            if (xhr.readyState === 4) {

                if (xhr.status === 200) {

                    // 요청 완료                 

                }

            }

        };

        xhr.send(formData);

    });

</script></p>

<p>

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

아..ajax에서 mb_10을 보내주지 못했어요 ㅠ.ㅠ

    var formData = new FormData();
    formData.append('mb_10', mb10Input.value); // mb_10 값을 추가

데이터를 넣어주니 해결되었습니다~

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인