Chọn count (*) từ bảng mysql trong php

Trước Lúc lấn sân vào nội dung bài viết, bạn thích gửi mang lại chúng ta xem xét sau: Hàm mysql_num_rows()đã được loại bỏ và vậy thế bằng mysqli_num_rows()kể từ phiên bản PHPhường. 7.0.0, lân cận một số trong những hàm không giống bao gồm tương quan cho mysql nhỏng mysql_connect()→mysqli_connect(), mysql_select_db() →mysqli_select_db(), mysqli_query() →mysqli_query(). Về mặt cơ bản, công dụng của hàm thay thế sửa chữa được không thay đổi, chỉ khác về mặt cú pháp với sản phẩm công nghệ trường đoản cú tmê man số (parameter).Bạn vẫn xem: Lỗi hàm mysqli_num_rows vào php để hiển thị dữ liệu

Bài viết này vẫn so với và một hiện tượng lạ lỗi trên cả 2 phiên bạn dạng.

You watching: Chọn count (*) từ bảng mysql trong php

Hiện tượng lỗi

PHPhường không thể cách xử lý câu lệnh tất cả thực hiện hàm mysqli_num_rows() (đối với phiên bản PHP >= 7.0.0) và mysql_num_rows() (đối với phiên bản PHP .

Lỗi hiện trên PHPhường >= 7.0.0

Fatal error: Uncaught TypeError: mysqli_num_rows(): Argument #1 ($...) must be of type mysqli_result, bool given in ...: mysqli_num_rows(false) #1 main thrown in ...Fatal error: Uncaught TypeError: mysqli_num_rows(): Argument #1 ($...) must be of type mysqli_result, string given in ...: mysqli_num_rows(false) #1 main thrown in ...


*

Lỗi hiện trên PHP Warning: mysql_num_rows() expects parameter 1 khổng lồ be resource, boolean given in ...

Ý nghĩa lỗi

PHP.. Parser không đồng ý cách xử trí câu lệnh bởi vì tđê mê số thứ nhất (paramerter 1 hoặc argument #1) truyền vào hàm mysqli_num_rows() (hoặc mysql_num_rows()) trong câu lệnh bất ổn hình dạng dữ liệu nhưng nó mong ước.

See more: Kinh Tuyến Là Gì Vĩ Tuyến Là Gì, Kinh Tuyến Vĩ Tuyến Là Gì

Kiểu dữ liệu muốn muốn: Data rước từ các đại lý tài liệu mysql (Dữ liệu trả về của hàm mysqli_query() hoặc mysql_query())Kiểu dữ liệu nhiều người đang truyền vào: Boolean (true hoặc false) hoăc String

Nguyên ổn nhân

1. Mysql từ chối xử lý query trong câu lệnh trước đó (do một nguyên do như thế nào đó nlỗi không đúng cú pháp, sai thương hiệu bảng, cột, lỗi kết nối...) dẫn mang lại tsay mê số truyền vào là boolean thay vị mysql resource.

lấy ví dụ như (PHP >= 7.0.0):

$con = mysqli_connect("localhost", "root", "");$db_selected = mysqli_select_db($bé, "test");$result = mysqli_query("SELECT * FROM user"); // emang đến mysqli_num_rows($result); //

lấy ví dụ (PHPhường $bé = mysql_connect("localhost", "root", "");$db_selected = mysql_select_db("test", $con);$result = mysql_query("SELECT * FROM user"); // emang lại mysql_num_rows($result); //

2. Quý Khách "bê" nguim query chưa được xử lý làm tđam mê số truyền vào hàm mysqli_num_rows() (hoặc mysql_num_rows()) dẫn mang lại dữ liệu truyền vào ở trong hình dạng string gắng vì chưng mysql resource.

lấy một ví dụ (PHP.. >= 7.0.0):

$query = "SELECT * FROM user";echo mysqli_num_rows($query); // Đúng đề nghị là mysqli_num_rows(mysql_query($query));

lấy ví dụ (PHP $query = "SELECT * FROM user";emang lại mysql_num_rows($query); // Đúng phải là mysql_num_rows(mysql_query($query));

Cách khắc phục và hạn chế (Fix)

Cách 1. Kiểm tra xem chúng ta vẫn cách xử lý (run) query trước lúc truyền tmê man số vàomysqli_num_rows() (hoặc mysql_num_rows())

Dấu hiệu cho biết các bạn đã xử lý query đó là hàm mysqli_query() (hoặc mysql_query()).

Trong ngôi trường đúng theo phạt hiện nay bạn không triển khai thao tác này, hãy bổ sung mang lại file code của chính bản thân mình.

Bước 2. Thử chạy query trong giao diện PHPMyadmin

Trong trường vừa lòng kết quả xử trí củamysqli_query() (hoặc mysql_query()) không thắng cuộc, PHP. parser sẽ không báo lỗi ví dụ (không đúng tên bảng, thương hiệu cột...). Chính vì thế bạn cần singin PHPMyadmin nhằm demo chạy query để tìm hiểu lỗi rõ ràng.

See more: Từ Khóa: Châu Tinh Trì - Châu Tinh Trì Nỗ Lực Thoát Phá Sản

Sau khi biết lỗi query nằm chỗ nào, các bạn hãy chỉnh lại query cho đúng trong tệp tin code của bản thân mình.