Tạo chức năng tìm kiếm trong PHP

Sau khi đọc xong bài viết này bạn sẽ xây dựng được chức năng tìm kiếm đơn giản trong PHP. Truy vấn sẽ thực thi tìm kiếm các từ khóa giống như từ mà bạn đang tìm kiếm bằng cách sử dụng LIKE. Vậy cách thực hiện như thế nào hãy xem chi tiết bài này của mình.

Công việc khá đơn giản bạn chỉ cần tạo ra một tập tin là search.php với nội dung như sau

<form action="" method="post">
<input type="text" name="search">
<input type="submit" name="submit" value="Search">
</form>
<?php
$servername='localhost';
$username='root'; // User mặc định là root
$password='';
$dbname = "data"; // Cơ sở dữ liệu
$conn=mysqli_connect($servername,$username,$password,$dbname);
if(!$conn){
die('Không thể kết nối Database:' .mysql_error());
}

    if(ISSET($_POST['submit'])){
        $keyword = $_POST['search'];
?>
<div>
    <h2>Kết quả</h2>
    <?php

        $query = mysqli_query($conn, "SELECT * FROM `posts` WHERE `title` LIKE '%$keyword%' ORDER BY `title`") or die(mysqli_error());
        while($fetch = mysqli_fetch_array($query)){
    ?>
        <?php echo $fetch['title']?>
        <p><?php echo substr($fetch['content'], 0, 100)?>...</p>
    <?php
        }
    ?>
</div>
<?php
    }
?>

Với đoạn mã nó sẽ hoạt động như sau:

  • Đầu tiên dữ liệu đưa vào input và lấy từ name=”search”
  • if(ISSET($_POST[‘submit’])) sẽ kiểm tra button xem người dùng đã nhấp chuột chưa
  • Nếu nhấp chuột thì dữ liệu được truyền từ name là search sang một biến $keyword
  • Sử dụng mệnh đề LIKE ‘%$keyword%’ nó sẽ tìm bất kỳ giá trị nào bằng với $keyword
  • Cuối cùng sử dụng vòng lặp để in dữ liệu đã tìm thấy lên màn hình
  • SELECT * FROM `posts` là bảng posts trên Database bạn phải điền đúng
  • WHERE `title`: title là cột trong CSDL

form-tim-kiem-trong-php

Đây là bài tập đơn giản nhưng qua đây bạn sẽ hiểu được cách sử dụng mệnh đề LIKE để tìm kiếm trong PHP và MySQL. Sau khi làm xong bài này bạn sẽ xây dựng nên chức năng phức tạp hơn bằng cách kết hợp jQuery,

Related Posts

Namespace trong PHP

Namespace cho phép các lớp / hàm / hằng cùng tên được sử dụng trong các ngữ cảnh khác nhau mà không có bất kỳ xung đột…

Hàm str_split() trong PHP

Bài viết này chúng ta sẽ đi tìm hiểu về hàm str_split(). Một trong những hàm thường được dùng trong PHP. Vậy cách sử dụng str_split() như…

Tạo chức năng sửa xoá thành viên bằng PHP & MySQL

Với một số trang web để quản lý thành viên (user) dễ dàng trong phần quản trị admin bạn phải khởi tạo chức năng sửa xoá thành…

Hàm str_replace trong PHP

Hàm str_replace trong PHP là gì? Hàm str_replace() trong PHP là một hàm được sử dụng để thay thế tất cả các xuất hiện của một chuỗi…

laravel8-vews-1

Views trong Laravel 8

Trong chuỗi series hướng dẫn học Laravel thì Views cũng quan trọng không kém gì so với Controller hay Model. Vậy chúng ta sẽ làm thế nào…

Validate Form trong PHP

Mặc dù trình duyệt hỗ trợ JavaScript để xác thực người dùng cho website. Tuy nhiên nếu JavaScript bị lỗi hoặc tắt đi thì công việc này…