Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

PHP - vấn đề với mysql_fetch_array () lồng nhau khiến tôi phát điên

Bạn đang nhận được kết quả mong đợi. Nếu bạn có tập hợp kết quả a,b,c,d , bạn đang bắt đầu bằng a là một danh mục mẹ, vì vậy nó sẽ tua lại phần đầu của tập hợp và lặp lại qua a,b,c,d một lần nữa dưới dạng các danh mục phụ. Bây giờ bạn đang ở cuối tập hợp nên cả hai vòng sẽ thoát ra vì không còn dữ liệu.

Những gì bạn có thể muốn làm là đọc tất cả dữ liệu vào một mảng PHP trước, sau đó lặp qua mảng đó và xây dựng một số loại cấu trúc cây. Bạn cũng có thể xây dựng cấu trúc cây của mình trực tiếp trong vòng lặp mysql_fetch.

Tùy thuộc vào những gì bạn đang cố gắng đạt được, cũng có nhiều cách tốt hơn để lưu trữ dữ liệu của bạn. Bạn nên đọc về cách lưu trữ cây và dữ liệu phân cấp trong SQL. Các tập hợp lồng nhau có thể là những gì bạn muốn.

Một điều khác:không sử dụng mysql_fetch_array , sử dụng mysql_fetch_assoc thay vì. Nếu không, bạn sẽ có các khóa số và khóa kết hợp và một mảng hàng chứa gấp đôi lượng dữ liệu cần có.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cơ sở dữ liệu .Net Core 2.0 Phương pháp tiếp cận đầu tiên Scaffold-DbContext của Mysql DB

  2. Chọn các hàng từ bảng MySQL có dấu thời gian PHP cũ hơn X

  3. Làm cách nào để Tính Diện tích Đa giác trong Cơ sở dữ liệu MySQL Khi các Điểm của Đa giác là Độ dài Vĩ độ?

  4. Không thể chuyển đổi giá trị ngày / giờ của MySQL thành System.DateTime trong VS2010

  5. Ánh xạ tinyint dưới dạng boolean hibernate