私はjavascript、jquery、AJAXに関する多くのチュートリアルを読んだり見たりしてきましたが、unlim500の人たちのような「フィルター」を作成する方法を理解できないようです。
彼らのスクリプトでは、ブランドをクリックするだけで、テーブルがフィルタリングされて更新されます (ページをリロードする必要はありません)。
このページのライブの例では、Все маркиをクリックしてください: http://www.unlim500.ru/results/
誰かが私を正しい方向に導くことができますか?
どうすればそのようなフィルターを作成できますか?
index.php =
<a id="bugatti_link" href="#" database_id="Bugatti">Bugatti</a>
<script>
$("#bugatti_link").click(load_ajax);
function load_ajax(e) {
var link = $(e.target);
var vehicle_database_id = link.attr("database_id");
var ajax_params = {"brand": vehicle_database_id};
$.getJSON("query2.php", ajax_params, success_handler)
}
function success_handler(data) {
//data variable contains whatever data the server returned from the database.
//Do some manipulation of the html document here. No page refresh will happen.
}
</script>
query2.php =
<?php
$host = "xx";
$user = "xx";
$db = "xx";
$pass = "xx";
$pdo = new PDO("mysql:host=" . $host . ";dbname=" . $db, $user, $pass);
$rows = array();
if(isset($_GET['brand'])) {
$stmt = $pdo->prepare("SELECT brand FROM cars WHERE brand = ? ");
$stmt->execute(array($_GET['brand']));
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
}
echo json_encode($rows);
?>