Mysqli_query trả về giá trị gì?

Chỉ cần kết hợp một hàm xóa đơn đặt hàng [có vẻ như xóa các đơn đặt hàng một cách thích hợp] nhưng tôi nhận thấy rằng, khi sử dụng hàm mysqli_query với truy vấn XÓA, nó sẽ trả về TRUE cho dù có tìm thấy bản ghi để xóa hay không. Đây có phải là những gì tôi nên mong đợi?

 

$orderid = $_GET ['var']; 
if[$orderid]{
$mysqli=getDBconnection[];		// START DB activity
$delete_qry = "DELETE FROM orders WHERE orderid = '".$orderid."'";
$result = mysqli_query[$mysqli, $delete_qry] 
	or die[mysqli_error[$mysqli]];
if[$result==TRUE]{
	echo "ORDER ".$orderid." DELETED.
"; } $delete_qry = "DELETE FROM order_items WHERE orderid = '".$orderid."'"; $result = mysqli_query[$mysqli, $delete_qry] or die[mysqli_error[$mysqli]]; if[$result==TRUE]{ echo " ORDER ITEMS[s] for ".$orderid." DELETED.
"; } mysqli_close[$mysqli]; // close connection to MySQL }

  • Trích dẫn

Liên kết để bình luậnChia sẻ trên các trang web khác

Nhiều tùy chọn chia sẻ hơn

PFMaBiSmAd

Đăng ngày 6 tháng 11 năm 2009

PFMaBiSmAd

  • cựu nhân viên
    • 16. 7k
  • Địa điểm. Colorado, Hoa Kỳ. S. A

    • Đăng lại

Đăng ngày 6 tháng 11 năm 2009

Đây có phải là những gì tôi nên mong đợi?

 

Có, giá trị TRUE được trả về bởi mysqli_query[] chỉ có nghĩa là truy vấn đã được thực thi -

 

Giá trị trả về

Trả về TRUE nếu thành công hoặc FALSE nếu thất bại. Đối với CHỌN, HIỂN THỊ, MÔ TẢ hoặc GIẢI THÍCH mysqli_query[] sẽ trả về một đối tượng kết quả

 

Bạn phải sử dụng mysqli_affected_rows[] để tìm ra số hàng bị ảnh hưởng bởi truy vấn INSERT, UPDATE, REPLACE hoặc DELETE cuối cùng

Tôi đã giải quyết vấn đề này được một thời gian rồi. Biểu mẫu gửi người dùng của tôi hiện trả về kết quả khi nó truy vấn xem Tên người dùng có tồn tại hay không. Nó hoạt động tại một thời điểm nhưng nó đã ngừng hoạt động và tôi không thể hiểu tại sao. Tôi đã dừng và khởi động lại apache và mysql của mình trong XAMPP. Vì vậy, tôi đã làm điều đó

Tôi đã xem đi xem lại mã này và không thể thấy vấn đề là gì. Tôi thậm chí đã làm trống bảng cơ sở dữ liệu để KHÔNG có người dùng nào trong bảng

Đây là mã

// Kiểm tra người dùng hiện có với id mới

$sql = "SELECT COUNT[*] FROM user WHERE user_name = '$_POST[newid]'";
$result = mysqli_query[$conn, $sql];

if [!$result] {	
    error['A database error occurred in processing your '.
          'submission.\\nIf this 1 error persists, please '.
          'contact you@example.com.'];
}
        $resultCheck = mysqli_num_rows[$result];
        printf["Result set has %d rows.\n",$resultCheck];
        echo "$_POST[newid]";
   if  [$resultCheck > 0] {
    error['A user already exists with your chosen userid.\\n'.
          'Please try another.'];
}

Tôi đặt câu lệnh printf vào đó để xem nó trả về cái gì và nó luôn trả về 1 kết quả khi KHÔNG có kết quả nào để trả về. Tôi đặt [$resultCheck > 0] thành [$resultCheck > 1] và nó hoạt động… tất nhiên rồi

Câu lệnh echo cho phép tôi xem những gì nó thực sự đang nhập vào $_POST[newid]. Nó đang gửi đầu vào biểu mẫu như bình thường

Nó khá thẳng về phía trước. Tôi đang nhìn một cái gì đó rõ ràng?

Tôi biết đó không phải là bảng cơ sở dữ liệu vì tôi đã thay đổi truy vấn để truy vấn một bảng khác/khác và nó trả về kết quả = 1

Tạo cơ sở dữ liệu MySQL Hướng dẫn này giả định kiến ​​thức về MySQL và SQL, nếu những thuật ngữ này không quen thuộc với bạn, hãy tham khảo các hướng dẫn về MySQL và SQL của chúng tôi

Chúng tôi sẽ tạo một cơ sở dữ liệu đơn giản có tên my_personal_contacts chỉ với một bảng

Dưới đây là các bước để tạo cơ sở dữ liệu và bảng

  • Kết nối với MySQL bằng công cụ truy cập yêu thích của bạn như MySQL workbench, phpMyAdmin, v.v.
  • Tạo cơ sở dữ liệu có tên my_person_contacts
  • Thực thi tập lệnh được hiển thị bên dưới để tạo bảng và chèn một số dữ liệu giả

Bây giờ chúng ta đã thiết lập một cơ sở dữ liệu mà chúng ta sẽ thao tác từ PHP

Đọc các bản ghi từ cơ sở dữ liệu Bây giờ chúng ta sẽ tạo một chương trình in các bản ghi từ cơ sở dữ liệu

Thực thi đoạn mã trên trả về kết quả được hiển thị trong sơ đồ hiển thị bên dưới

Chèn bản ghi mới

Bây giờ hãy xem một ví dụ thêm một bản ghi mới vào bảng của chúng ta. đoạn mã dưới đây cho thấy việc thực hiện

Chủ Đề