Hướng dẫn what will be the return value of mysqli_query () function on error? - Giá trị trả về của hàm mysqli_query () khi bị lỗi là gì?

Tôi đang sử dụng hàm PHP mysqli_query để chạy truy vấn

if [$result = $mysqli->query["SELECT * FROM data"]]
{
    $count = $result->num_rows; 
    printf["Result set has %d rows.\n", $count];
    $result->close[];
}
0.

mysqli_query trả về điều gì nếu truy vấn chạy thành công, nhưng truy vấn không tìm thấy trận đấu nào?

Dharman ♦

Phù hiệu vàng 28K2121 gold badges75 silver badges127 bronze badges

hỏi ngày 19 tháng 1 năm 2013 lúc 22:31Jan 19, 2013 at 22:31

1

Theo hướng dẫn:

Trả về sai khi thất bại. Để chọn thành công, hiển thị, mô tả hoặc giải thích các truy vấn mysqli_query [] sẽ trả về một đối tượng mysqli_result. Đối với các truy vấn thành công khác mysqli_query [] sẽ trả về true.

Một truy vấn chạy nhưng trả về không có kết quả nào vẫn được coi là "truy vấn thành công", vì truy vấn đã chạy trong cơ sở dữ liệu và một tập kết quả trống là một phản hồi hợp pháp. Điều này có nghĩa là truy vấn vẫn sẽ trả về một đối tượng

if [$result = $mysqli->query["SELECT * FROM data"]]
{
    $count = $result->num_rows; 
    printf["Result set has %d rows.\n", $count];
    $result->close[];
}
2 và nếu bạn kiểm tra số lượng hàng của nó [thông qua
if [$result = $mysqli->query["SELECT * FROM data"]]
{
    $count = $result->num_rows; 
    printf["Result set has %d rows.\n", $count];
    $result->close[];
}
3 theo kiểu hướng đối tượng hoặc
if [$result = $mysqli->query["SELECT * FROM data"]]
{
    $count = $result->num_rows; 
    printf["Result set has %d rows.\n", $count];
    $result->close[];
}
4 theo kiểu thủ tục] nó sẽ trả về 0.

Đã trả lời ngày 19 tháng 1 năm 2013 lúc 22:38Jan 19, 2013 at 22:38

AgentConundrumagentConundrumAgentConundrum

20.1k6 Huy hiệu vàng62 Huy hiệu bạc99 Huy hiệu Đồng6 gold badges62 silver badges99 bronze badges

1

Một đối tượng

if [$result = $mysqli->query["SELECT * FROM data"]]
{
    $count = $result->num_rows; 
    printf["Result set has %d rows.\n", $count];
    $result->close[];
}
5, hơn là bạn có thể sử dụng mysqli_num_rows để đếm số lượng hàng được trả về. Vì thế:

if[mysqli_num_rows[$query] > 0 ]{
    // Do something
}

Đã trả lời ngày 19 tháng 1 năm 2013 lúc 22:33Jan 19, 2013 at 22:33

NielsnielsNiels

47.2K4 Huy hiệu vàng59 Huy hiệu bạc81 Huy hiệu đồng4 gold badges59 silver badges81 bronze badges

if [$result = $mysqli->query["SELECT * FROM data"]]
{
    $count = $result->num_rows; 
    printf["Result set has %d rows.\n", $count];
    $result->close[];
}

Từ tài liệu tham khảo:

Trả về sai khi thất bại. Để chọn thành công, hiển thị, mô tả hoặc giải thích các truy vấn mysqli_query [] sẽ trả về một đối tượng mysqli_result. Đối với các truy vấn thành công khác mysqli_query [] sẽ trả về true.

Đã trả lời ngày 19 tháng 1 năm 2013 lúc 22:35Jan 19, 2013 at 22:35

Tommaso Belluzzotommaso BelluzzoTommaso Belluzzo

22.6K7 Huy hiệu vàng69 Huy hiệu bạc95 Huy hiệu Đồng7 gold badges69 silver badges95 bronze badges

Hàm mysqli_connect [] trả về gì?

Giá trị trả về của mysqli_connect [] là kết nối cơ sở dữ liệu "xử lý". Tay cầm là một đối tượng đại diện cho kết nối với cơ sở dữ liệu.

Cập nhật lần cuối vào ngày 19 tháng 8 năm 2022 21:50:40 [UTC/GMT +8 giờ]

Syntax:

hàm mysqli_query [] / mysqli :: truy vấn

mixed mysqli::query [ string $query [, int $resultmode = MYSQLI_STORE_RESULT ] ]

Hàm mysqli_query [] / mysqli :: Truy vấn thực hiện truy vấn đối với cơ sở dữ liệu.

mixed mysqli_query [ mysqli $link , string $query [, int $resultmode = MYSQLI_STORE_RESULT ] ]

Parameter:

TênSự mô tảRequired/Optional
Phong cách định hướng đối tượngPhong cách thủ tụcliên kết
truy vấnChỉ định chuỗi truy vấn
Data inside the query should be properly escaped.
liên kết
truy vấnChỉ định chuỗi truy vấn
If you use MYSQLI_USE_RESULT all subsequent calls will return error Commands out of sync unless you call mysqli_free_result[]
With MYSQLI_ASYNC [available with mysqlnd], it is possible to perform query asynchronously. mysqli_poll[] is then used to get results from such queries.
Không bắt buộc

Sử dụng: Phong cách thủ tục

mysqli_query[connection,query,resultmode];

Parameter:

TênSự mô tảBắt buộc / tùy chọn
sự liên quanChỉ định kết nối MySQL để sử dụngYêu cầu
truy vấnChỉ định chuỗi truy vấnYêu cầu
truy vấnChỉ định chuỗi truy vấn
  • Kết quả
  • Một hằng số. Một trong hai:
Không bắt buộc

Mysqli_use_result [sử dụng điều này nếu chúng tôi phải lấy một lượng lớn dữ liệu]

Mysqli_store_result [đây là mặc định]

Giá trị trở lại: PHP 5, PHP 7

Trả về sai khi thất bại. Để chọn thành công, hiển thị, mô tả hoặc giải thích các truy vấn mysqli_query [] sẽ trả về một đối tượng mysqli_result. Đối với các truy vấn thành công khác mysqli_query [] sẽ trả về true.

Bài Viết Liên Quan

Chủ Đề