라이브러리

[PHP] UIControlsCombo::onSelected - 선택된 핸들러




PHP에서 UI Controls Combo::onSelected


PHP는 서버측 언어로, UI Controls Combo::onSelected은 클라이언트측 자바스크립트 이벤트입니다. 하지만, PHP에서 UI Controls Combo::onSelected을 사용하려면, 자바스크립트를 사용하여 서버측 PHP로 데이터를 전송해야 합니다.

# UI Controls Combo::onSelected이란?


UI Controls Combo::onSelected은 콤보 박스에서 선택된 항목이 변경될 때 발생하는 이벤트입니다. 이 이벤트는 콤보 박스에 선택된 항목의 값과 인덱스를 전달합니다.

# PHP에서 UI Controls Combo::onSelected 사용하기


PHP에서 UI Controls Combo::onSelected을 사용하려면, 자바스크립트를 사용하여 서버측 PHP로 데이터를 전송해야 합니다. 다음은 예제입니다.

#hostingforum.kr
php

// PHP

<?php

// 데이터베이스 연결

$conn = mysqli_connect("localhost", "root", "", "test");



// 데이터베이스에서 데이터 가져오기

$query = "SELECT * FROM combo_data";

$result = mysqli_query($conn, $query);



// 데이터를 콤보 박스에 표시하기

$data = array();

while ($row = mysqli_fetch_assoc($result)) {

    $data[] = array('value' => $row['id'], 'label' => $row['name']);

}



// 데이터를 JSON으로 변환하기

$json_data = json_encode($data);



// JSON 데이터를 클라이언트로 전송하기

echo $json_data;

?>



#hostingforum.kr
javascript

// 자바스크립트

// 콤보 박스 생성하기

var combo = document.getElementById("combo");



// 콤보 박스에 데이터 추가하기

var data = <?php echo json_encode($data); ?>;

data.forEach(function(item) {

    var option = document.createElement("option");

    option.value = item.value;

    option.text = item.label;

    combo.appendChild(option);

});



// 콤보 박스 이벤트 리스너 추가하기

combo.addEventListener("change", function() {

    // 콤보 박스에서 선택된 항목의 값과 인덱스 가져오기

    var selectedValue = combo.value;

    var selectedIndex = combo.selectedIndex;



    // 서버측 PHP로 데이터 전송하기

    var xhr = new XMLHttpRequest();

    xhr.open("POST", "combo_selected.php", true);

    xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

    xhr.send("selected_value=" + selectedValue + "&selected_index=" + selectedIndex);



    // 서버측 PHP에서 데이터 받기

    xhr.onload = function() {

        if (xhr.status === 200) {

            var response = JSON.parse(xhr.responseText);

            console.log(response);

        }

    };

});



# combo_selected.php


#hostingforum.kr
php

// PHP

<?php

// 데이터베이스 연결

$conn = mysqli_connect("localhost", "root", "", "test");



// 데이터베이스에서 데이터 가져오기

$query = "SELECT * FROM combo_data WHERE id = $_POST[selected_value]";

$result = mysqli_query($conn, $query);



// 데이터를 JSON으로 변환하기

$data = array();

while ($row = mysqli_fetch_assoc($result)) {

    $data[] = array('id' => $row['id'], 'name' => $row['name']);

}



// JSON 데이터를 클라이언트로 전송하기

echo json_encode($data);

?>



위의 예제는 콤보 박스에서 선택된 항목의 값과 인덱스를 서버측 PHP로 전송하고, 서버측 PHP에서 데이터를 가져와 클라이언트로 전송하는 예제입니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 8,985건 / 65 페이지

검색

게시물 검색