Mysql
 sql >> Baza danych >  >> RDS >> Mysql

PHP - problem z zagnieżdżonym mysql_fetch_array() doprowadza mnie do szału

Otrzymujesz oczekiwany rezultat. Jeśli masz zestaw wyników a,b,c,d , zaczynasz od a która jest kategorią nadrzędną, więc przewija do początku zbioru i przechodzi przez a,b,c,d ponownie jako podkategorie. Teraz jesteś na końcu zestawu, więc obie pętle zakończą się, ponieważ nie ma więcej danych.

To, co prawdopodobnie chcesz zrobić, to najpierw wczytać wszystkie dane do tablicy PHP, a następnie wykonać iterację i zbudować coś w rodzaju struktury drzewa. Możesz także zbudować strukturę drzewa bezpośrednio w pętli mysql_fetch.

W zależności od tego, co chcesz osiągnąć, istnieją również lepsze sposoby przechowywania danych. Warto poczytać, jak przechowywać drzewa i dane hierarchiczne w SQL. Zestawy zagnieżdżone są prawdopodobnie tym, czego chcesz.

Jeszcze jedna rzecz:nie używaj mysql_fetch_array , użyj mysql_fetch_assoc zamiast. W przeciwnym razie otrzymasz klucze numeryczne i asocjacyjne oraz tablicę wierszy, która zawiera dwa razy więcej danych niż powinna.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. symfony 1.4 propel:build-all nie działa na Mysql 5.5

  2. Prawidłowy sposób oczyszczania danych wejściowych w MySQL za pomocą PDO

  3. MYSQL:Jak połączyć dwie tabele w tym samym zapytaniu, odwołując się dwukrotnie do tej samej tabeli?

  4. Ogranicz numer strony paginacji

  5. Czy ktoś kiedykolwiek korzystał ze standardu płatności w witrynie PayPal ze zmiennymi SESSION?