Computer >> Máy Tính >  >> Lập trình >> MySQL

Làm thế nào để viết tập lệnh PHP bằng cách sử dụng mệnh đề LIKE bên trong nó để khớp với dữ liệu từ bảng MySQL?


Chúng ta có thể sử dụng cú pháp tương tự của mệnh đề WHERE ... LIKE vào hàm PHP - mysql_query (). Hàm này được sử dụng để thực thi lệnh SQL và sau đó là một hàm PHP khác - mysql_fetch_array () có thể được sử dụng để tìm nạp tất cả dữ liệu đã chọn nếu mệnh đề WHERE ... LIKE được sử dụng cùng với lệnh SELECT.

Nhưng nếu mệnh đề WHERE ... LIKE đang được sử dụng với lệnh DELETE hoặc UPDATE, thì không cần gọi thêm hàm PHP.

Để minh họa điều đó, chúng tôi lấy ví dụ sau -

Ví dụ

Trong ví dụ này, chúng tôi đang viết một tập lệnh PHP sẽ trả về tất cả các bản ghi từ bảng có tên ‘tutorial_tbl’ mà tên tác giả chứa ‘jay’ -

<?php
   $dbhost = 'localhost:3036';
   $dbuser = 'root';
   $dbpass = 'rootpassword';
   $conn = mysql_connect($dbhost, $dbuser, $dbpass);
   
   if(! $conn ) {
      die('Could not connect: ' . mysql_error());
   }
   
   $sql = 'SELECT tutorial_id, tutorial_title,
      tutorial_author, submission_date
      FROM tutorials_tbl
      WHERE tutorial_author LIKE "%jay%"';
     
   mysql_select_db('TUTORIALS');
   $retval = mysql_query( $sql, $conn );

   if(! $retval ) {
      die('Could not get data: ' . mysql_error());
   }
   
   while($row = mysql_fetch_array($retval, MYSQL_ASSOC)) {
      echo "Tutorial ID :{$row['tutorial_id']} <br> ".
         "Title: {$row['tutorial_title']} <br> ".
         "Author: {$row['tutorial_author']} <br> ".
         "Submission Date : {$row['submission_date']} <br> ".
         "--------------------------------<br>";
   }
   echo "Fetched data successfully\n";
   mysql_close($conn);
?>