U wilt AJAX gebruiken om een php-script van uw pagina aan te roepen en vervolgens het php-script gebruiken om uw database te doorzoeken en de resultaten terug naar de pagina te echoën.
Ik ga jQuery voor dit voorbeeld gebruiken omdat het veel regels bespaart, je zou het moeten bekijken als je dat nog niet hebt gedaan.
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
<script type="text/javascript">
function searchOccupation () {
$.ajax({
url: "searchOccupation.php?search=" + $('#searchTxt').attr('value'),
success: function (data) {
alert(data);
}
});
}
</script>
</head>
<body>
<input type="text" id="searchTxt">
<input type="button" value="Search" id="searchBtn" onclick="searchOccupation()">
</body>
Dan ziet je php-script (waarvan de naam moet overeenkomen met die in het "url"-veld van de ajax-aanroep (in dit geval moet het "searchOccupation.php") er als volgt uit:
<?php
$searchTxt = $_GET['search'];
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$con = new mysqli('server', 'user', 'password', 'database');
$sql = "SELECT * FROM tableName WHERE occupation = ?";
$stmt = $con->prepare($sql);
$stmt->bind_param('s', $searchTxt);
$stmt->execute();
$result = $stmt->get_result();
while($row = $result->fetch_assoc()) {
echo $row['firstName']; //This sends data back to the page
}
?>
Het echo-gedeelte van het php-script is wat de gegevens terugstuurt naar de "succes:functie (data)" van het javascript, dus echo welk veld je maar wilt op de pagina zoals hierboven.
Bewerken:enigszins verkeerd begrepen wat je bedoelde, ajon's hierboven is waarschijnlijk wat je nodig hebt.