Mysql
 sql >> Baza danych >  >> RDS >> Mysql

wykonaj kod PHP podczas wybierania elementu combobox

Będziesz musiał użyć AJAX aby to zrobić. Oto prosty przykład:

HTML

Tylko proste pole wyboru, na potrzeby tego przykładu.

<select id='items'>
    <option value='1'>Item 1</option>
    <option value='2'>Item 2</option>
    <option value='3'>Item 3</option>
</select>

JavaScript

Zamierzam tutaj użyć jQuery, nie musisz tego robić, jeśli nie chcesz, ale to znacznie ułatwia AJAX.

Przeglądarka będzie nasłuchiwać change zdarzenie w polu wyboru i wykonaj żądanie AJAX do odpowiedniego adresu URL. Gdy serwer odeśle dane, zostanie uruchomiona funkcja sukcesu. Przeczytaj więcej o .ajax() w dokumentacji 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

Tutaj pobieram dane, Kodowanie JSON i odesłanie go z powrotem do klienta z odpowiednim typem MIME. Nie jestem pewien, jak łączysz się z bazą danych MySQL, ale używam PDO tutaj.

Należy pamiętać, że funkcje mysql_* są przestarzałe .

<?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);
}



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. DLA AKTUALIZACJI v/s LOCK IN SHARE MODE:Zezwalaj współbieżnym wątkom na odczytywanie zaktualizowanej wartości stanu zablokowanego wiersza

  2. SQL_CALC_FOUND_ROWS / FOUND_ROWS() nie działa w PHP

  3. Jak używać funkcji SQL z INNER JOIN w MySQL?

  4. Monitorowanie baz danych za pomocą MySQL Enterprise Monitor

  5. połączyć AngularJS z mysql za pomocą mojej usługi PHP?