Các tài liệu về Lỗi Được đề cập trong tiêu đề nóiTại sao tôi nhận được lỗi "lệnh đồng bộ; bạn không thể chạy lệnh này ngay bây giờ"
Nếu bạn nhận được Commands đồng bộ; bạn không thể chạy lệnh này ngay bây giờ trong mã khách hàng của bạn, bạn đang gọi các chức năng của khách hàng theo thứ tự sai.
Điều này có thể xảy ra, ví dụ: nếu bạn đang sử dụng mysql_use_result() và hãy thử thực hiện truy vấn mới trước khi bạn đã gọi mysql_free_result(). Nó cũng có thể xảy ra nếu bạn cố gắng thực hiện hai truy vấn trả về dữ liệu mà không cần gọi mysql_use_result() hoặc mysql_store_result() ở giữa.
Từ đây: http://dev.mysql.com/doc/refman/5.0/en/commands-out-of-sync.html
Nhưng Trong Query Đầu tiên tôi không lấy bất kỳ dữ liệu từ cơ sở dữ liệu mysql, tôi chỉ chèn. Và trong lần truy vấn thứ hai, tôi nhận được dữ liệu từ cơ sở dữ liệu.
Đây là mã của tôi
$connection = mysqli_connect("localhost","username","password","tbl_msgs");
if(mysqli_connect_errno($connection))
{
die("Failed to connect to MySQL: " . mysqli_connect_error());
}
$query = "INSERT INTO users (total_comments, total_views)
VALUES ({$total_comments}, {$total_views});";
$query .= "INSERT INTO msgs (notifications) VALUES ({$notifications})";
mysqli_multi_query($connection,$query);
Upto Bước này mọi thứ đều tốt. Nhưng khi tôi thực hiện truy vấn sau Nó cung cấp cho Lỗi
$select_query = "SELECT * FROM msgs WHERE msg_id = {$msg_id}";
$result_set = mysqli_query($connection,$select_query);
if(!$result_set) {
die(mysqli_error($connection));
}
Tại đây, nó cung cấp cho Lỗi Commands out of sync; you can't run this command now
. Tôi không thể hiểu tình huống này
Lưu ý: Có bất kỳ vấn đề nào trong Truy vấn, tôi đã thực hiện cùng một truy vấn trực tiếp với PHPMyAdmin và nó hoạt động tốt.
tại sao tôi cần phải làm điều này với mysqli nhưng không phải mysql? – Fearghal
các chức năng mysql_ * không còn được dùng kể từ phiên bản PHP 5.5.0. – LightYearsBehind