Hướng dẫn what does mysqli_query return for insert? - mysqli_query trả về cho insert là gì?

8

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

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 ♦

28.1K21 Huy hiệu vàng75 Huy hiệu bạc127 Huy hiệu đồng21 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

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

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

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

Syntax:

Phong cách định hướng đối tượng

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

Phong cách thủ tục

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

Parameter:

TênSự mô tảRequired/Optional
liên kết Một định danh liên kết được trả về bởi mysqli_connect [] hoặc mysqli_init []Yêu cầu chỉ cho phong cách thủ tục và tùy chọn cho phong cách định hướng đối tượng
truy vấnChuỗi truy vấn.data bên trong truy vấn nên được thoát đúng cách.
Data inside the query should be properly escaped.
Yêu cầu chỉ cho phong cách thủ tục và tùy chọn cho phong cách định hướng đối tượng
Kết quảHằng số mysqli_use_result hoặc mysqli_store_result tùy thuộc vào hành vi mong muốn. Theo mặc định, mysqli_store_result được sử dụng. Nếu bạn sử dụng mysqli_use_result Tất cả các cuộc gọi tiếp theo sẽ trả lại các lệnh lỗi không đồng bộ trừ khi bạn gọi mysqli_free_result [] với mysqli_async mysqli_poll [] sau đó được sử dụng để nhận kết quả từ các truy vấn như vậy.
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
Kết quảtruy vấn
  • Chỉ định chuỗi truy vấn
  • Một hằng số. Một trong hai:
Không bắt buộc

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

Tên

Sự mô tả PHP 5, PHP 7

Bắt buộc / tùy chọn

Bài Viết Liên Quan

Chủ Đề