Hướng dẫn php mysql result to string - php mysql kết quả thành chuỗi


Tôi đang cố gắng lặp lại kết quả của truy vấn với người dùng nhưng khi PHP này chạy qua AJAX, tôi gặp lỗi này:

Không thể chuyển đổi lỗi gây tử vong: đối tượng của lớp mysqli_result không thể chuyển đổi thành chuỗi trong d: \ xampp \ htdocs \ getMessage.php trên dòng 12

Bây giờ tôi không hiểu điều này bởi vì tôi đã chuyển đổi kết quả $ thành một chuỗi .. cảm ơn!

Hướng dẫn php mysql result to string - php mysql kết quả thành chuỗi

Dharman ♦

28.3K21 Huy hiệu vàng75 Huy hiệu bạc128 Huy hiệu đồng21 gold badges75 silver badges128 bronze badges

Đã hỏi ngày 9 tháng 11 năm 2017 lúc 9:22Nov 9, 2017 at 9:22

2

mysqli_query () không thể chuyển đổi thành chuỗi.

Bạn phải sử dụng mysqli_fetch cho parse để mảng.

Example:

if ($result=mysqli_query($con,$sql))
  {
  // Fetch one and one row
  while ($row=mysqli_fetch_row($result))
    {
    printf ("%s (%s)\n",$row[0],$row[1]);
    }
}

Đã trả lời ngày 9 tháng 11 năm 2017 lúc 9:33Nov 9, 2017 at 9:33

Trước hết MySQLI_Query thực hiện truy vấn trên cơ sở dữ liệu, nó không trực tiếp trả về giá trịmysqli_query Performs a query on the database it does not directly return a value

$query = mysqli_query($con,$sql);

Vì vậy, để làm điều đó, sử dụng mysqli_fetch_assoc, nó sẽ lấy một hàng kết quả như một mảng kết hợpmysqli_fetch_assoc it will Fetch a result row as an associative array

$result = mysqli_fetch_assoc($query);

Sau đó, bây giờ bạn có thể nhận được giá trị của mình

$resultstring = $result['message'];

Vì vậy, mã của bạn sẽ như thế này


Đã trả lời ngày 9 tháng 11 năm 2017 lúc 9:35Nov 9, 2017 at 9:35

Hướng dẫn php mysql result to string - php mysql kết quả thành chuỗi

Giới thiệuBeginnerBeginner

4.0303 Huy hiệu vàng16 Huy hiệu bạc26 Huy hiệu Đồng3 gold badges16 silver badges26 bronze badges

2

Bạn cần chuyển đổi dữ liệu (RS) thành mảng!

$result = mysqli_fetch_assoc($result);
print_r($result);

Đã trả lời ngày 9 tháng 11 năm 2017 lúc 9:28Nov 9, 2017 at 9:28

Y.opY.opY.op

791 Huy hiệu vàng1 Huy hiệu bạc9 Huy hiệu đồng1 gold badge1 silver badge9 bronze badges

Do kết quả của truy vấn thành công của bạn, bạn sẽ nhận được đối tượng mysqli_result. Nếu bạn muốn nhận được hàng, hãy sử dụng chức năng dữ liệu tìm nạp.

$result = mysqli_query($con,$sql);
$resultstring = $result->fetch_row()[0];

Xem Tài liệu: MySQLI_Query & Mysqli_result

Đã trả lời ngày 9 tháng 11 năm 2017 lúc 9:37Nov 9, 2017 at 9:37

Hướng dẫn php mysql result to string - php mysql kết quả thành chuỗi

AnwarusanwarusAnwarus

1382 Huy hiệu bạc11 Huy hiệu đồng2 silver badges11 bronze badges

Tôi đã giải quyết vấn đề tương tự với cách tiếp cận sau.

// Assign your sql statement
$sqlMasterSiteIds = "SELECT DISTINCT table_name FROM site WHERE gwid = 39 AND master_site_id NOT LIKE '0'";

// Run the query
$masterSiteIdsQuery = $this->db->query($sqlMasterSiteIds);

// Prepare container               
$masterSiteIds = [];

// Fetch first row of query results
$first_row = $masterSiteIdsQuery->fetch_assoc();

// Assign first row to your prepared container
$masterSiteIds= $first_row['master_site_id'];

// Change the results into string comma separated so it can be used in next mysqli query or echoed
while($sub_row = $masterSiteIdsQuery->fetch_assoc()) {
     $masterSiteIds = implode(',', array($masterSiteIds, $sub_row['master_site_id']));
}

// Now you can use $masterSiteIds which is a STRING of values comma separated
echo $masterSiteIds;   // Output: '1024, 1142, 8492'

Tôi hy vọng nó sẽ giúp bạn hoặc bất kỳ ai khác cần. Tôi không chắc đó là cách tiếp cận tốt nhất nhưng nó hoạt động tốt trong trường hợp của tôi vì tôi phải thay đổi kết quả của mình thành chuỗi để tôi có thể sử dụng nó trong truy vấn MySQLI tiếp theo của mình bằng lệnh Find_in_set.

Mã hóa hạnh phúc!

Đã trả lời ngày 3 tháng 10 năm 2019 lúc 8:55Oct 3, 2019 at 8:55

RafalmrafalmRafalM

131 Huy hiệu bạc4 Huy hiệu đồng1 silver badge4 bronze badges

Làm thế nào tôi có thể nhận được kết quả truy vấn SQL trong PHP?

Chúng ta có thể thực hiện truy vấn đối với cơ sở dữ liệu bằng phương thức php mysqli_query (). Cú pháp: Chúng ta có thể sử dụng phương thức mysqli_Query () theo hai cách: kiểu hướng đối tượng.using the PHP mysqli_query() method. Syntax: We can use the mysqli_query( ) method in two ways: Object-oriented style.

Hàm mysql_fetch_array () là gì?

mysql_fetch_array là một hàm PHP cho phép bạn truy cập dữ liệu được lưu trữ trong kết quả được trả về từ mysql_query thực sự nếu bạn muốn biết những gì được trả về khi bạn sử dụng hàm mysql_query để truy vấn cơ sở dữ liệu MySQL.Nó không phải là thứ mà bạn có thể trực tiếp thao túng.Cú pháp.a PHP function that will allow you to access data stored in the result returned from the TRUE mysql_query if u want to know what is returned when you used the mysql_query function to query a Mysql database. It is not something that you can directly manipulate. Syntax.

Kết quả $ có nghĩa là gì trong PHP?

mysqli_num_rows ($ result);Tham số: Hàm này chấp nhận kết quả tham số $ duy nhất (trong đó $ results là truy vấn MySQL được thiết lập bằng mysqli_query ()).Nó là một tham số bắt buộc và biểu thị tập kết quả được trả về bởi một truy vấn tìm nạp trong MySQL.Giá trị trả về: Nó trả về số lượng hàng có trong một tập kết quả.represents the result set returned by a fetch query in MySQL. Return Value: It returns the number of rows present in a result set.

Hàm mysql_result () là gì?

Hàm mysql_result () trả về giá trị của một trường trong một bản ghi.Hàm này trả về giá trị trường khi thành công, hoặc sai khi thất bại.returns the value of a field in a recordset. This function returns the field value on success, or FALSE on failure.