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

Jak wykonać zapytanie PHP przy wyborze opcji przy użyciu AJAX?

Po pierwsze, musisz wyzwolić żądanie AJAX za pomocą JavaScript. Ale poprowadzę cię za pomocą jQuery (biblioteki JavaScript).

Twój kod HTML:

<select name="allbooks" id="allbooks">
  <option value="none" ></option>
  <option value="allbooks" >All Books</option>
</select>
<div id="show">
  <!-- ITEMS TO BE DISPLAYED HERE -->
</div>

Następnie pobierz jQuery .

Następnie zróbmy skrypt:

<script src="jquery-1.9.1.min.js"></script> <!-- CHANGE THE JQUERY FILE DEPENDING ON THE VERSION YOU HAVE DOWNLOADED -->
<script type="text/javascript">
  $(document).ready(function(){ /* PREPARE THE SCRIPT */
    $("#allbooks").change(function(){ /* WHEN YOU CHANGE AND SELECT FROM THE SELECT FIELD */
      var allbooks = $(this).val(); /* GET THE VALUE OF THE SELECTED DATA */
      var dataString = "allbooks="+allbooks; /* STORE THAT TO A DATA STRING */

      $.ajax({ /* THEN THE AJAX CALL */
        type: "POST", /* TYPE OF METHOD TO USE TO PASS THE DATA */
        url: "get-data.php", /* PAGE WHERE WE WILL PASS THE DATA */
        data: dataString, /* THE DATA WE WILL BE PASSING */
        success: function(result){ /* GET THE TO BE RETURNED DATA */
          $("#show").html(result); /* THE RETURNED DATA WILL BE SHOWN IN THIS DIV */
        }
      });

    });
  });
</script>

Następnie utwórzmy get-data.php który otrzyma dane wysłane przez AJAX.

if(!empty($_POST["allbooks"])){
  /* DO YOUR QUERY HERE AND GET THE OUTPUT YOU WANT */
  echo $output; /* PRINT THE OUTPUT YOU WANT, IT WILL BE RETURNED TO THE ORIGINAL PAGE */
}

Możesz sprawdzić ten przykład - JSfiddle .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Metoda wyceny PDO

  2. Zaktualizuj dane bazy danych za pomocą przycisku przesyłania

  3. SQL — podaj 3 trafienia tylko dla każdego typu

  4. Jak usunąć ograniczenie niezerowe w MySQL?

  5. Możliwe zwracane wartości dla mysql_affected_rows()