Page 1 of 1

AJAX Database Example

Posted: Fri Oct 27, 2023 9:08 am
by Guest
AJAX Database Example


AJAX can be used for interactive communication with a database.

AJAX Database Example
The following example will demonstrate how a web page can fetch
information from a database with AJAX:

Example



Select a customer:
Alfreds Futterkiste
North/South
Wolski Zajazd



Customer info will be listed here...


Try it Yourself »



Example Explained - The showCustomer() Function
When a user selects a customer in the dropdown list above, a function called showCustomer() is executed. The
function is triggered by the onchange event:

showCustomer

function showCustomer(str) {
  if (str == "") {
    document.getElementById("txtHint").innerHTML = "";
    return;
  }
  const xhttp = new XMLHttpRequest();
  xhttp.onload = function() {
    document.getElementById("txtHint").innerHTML = this.responseText;
  }
  xhttp.open("GET", "getcustomer.php?q="+str);
  xhttp.send();
}


The showCustomer() function does the following:

Check if a customer is selected
Create an XMLHttpRequest object
Create the function to be executed when the server response is ready
Send the request off to a file on the server
Notice that a parameter (q) is added to the URL (with the content of the dropdown list)








The AJAX Server Page
The page on the server called by the JavaScript above is a PHP file called "getcustomer.php".
The source code in "getcustomer.php" runs a query against a database, and returns the result in an HTML
table:

<?php$mysqli = new mysqli("servername", "username",
"password", "dbname");if($mysqli->connect_error) { 
exit('Could not connect');}$sql = "SELECT customerid, companyname,
contactname, address, city, postalcode, countryFROM customers WHERE
customerid = ?";$stmt = $mysqli->prepare($sql);
$stmt->bind_param("s", $_GET['q']);
$stmt->execute();$stmt->store_result();$stmt->bind_result($cid,
$cname, $name, $adr, $city, $pcode, $country);$stmt->fetch();$stmt->close();
echo "<table>";echo "<tr>";echo "<th>CustomerID</th>";echo
"<td>" . $cid . "</td>";echo "<th>CompanyName</th>";echo "<td>" . $cname
. "</td>";echo "<th>ContactName</th>";echo "<td>" . $name . "</td>";
echo "<th>Address</th>";echo "<td>" .
$adr . "</td>";echo "<th>City</th>";
echo "<td>" . $city . "</td>";echo "<th>PostalCode</th>";echo "<td>" .
$pcode . "</td>";echo "<th>Country</th>";echo "<td>" . $country .
"</td>";echo "</tr>";echo "</table>";?>














+1

Reference: https://www.w3schools.com/js/js_ajax_database.asp