Bạn sẽ cần sử dụng AJAX để làm điều này. Đây là một ví dụ đơn giản:
HTML
Chỉ là một hộp chọn đơn giản, cho mục đích của ví dụ này.
<select id='items'>
<option value='1'>Item 1</option>
<option value='2'>Item 2</option>
<option value='3'>Item 3</option>
</select>
JavaScript
Tôi sẽ sử dụng jQuery ở đây, bạn không cần phải làm nếu không muốn nhưng nó giúp AJAX dễ dàng hơn rất nhiều.
Trình duyệt sẽ lắng nghe change
trên hộp chọn và thực hiện yêu cầu AJAX tới URL thích hợp. Khi máy chủ gửi lại dữ liệu, chức năng thành công sẽ được kích hoạt. Đọc thêm về .ajax()
trong tài liệu jQuery.
$(document).ready(function() {
$('#items').change(function() {
$.ajax({
type: 'GET',
url: 'pageWithPhpCode.php',
data: {
itemID: $(this).val()
},
dataType: 'json',
success: function(data) {
// do whatever here
console.log(data);
}
});
});
});
PHP
Ở đây tôi đang truy xuất dữ liệu, mã hóa JSON và gửi lại cho máy khách với kiểu MIME thích hợp. Tôi không chắc bạn kết nối với cơ sở dữ liệu MySQL của mình như thế nào, nhưng tôi đang sử dụng PDO tại đây.
Hãy nhớ rằng các hàm mysql_ * là không dùng nữa .
<?php
if(isset($_GET['itemID'])) {
$db = new PDO();
// ... connect to your database, however you do it
$q = 'SELECT * FROM items WHERE id = :itemid;';
$stmt = $db->prepare($q);
$stmt->bindValue(':itemid', $_GET['itemID'], PDO::PARAM_INT);
$stmt->execute();
$output = $stmt->fetchAll(PDO::FETCH_ASSOC);
header('Content-Type: application/json; charset=utf-8');
echo json_encode($output);
}