Mysql
 sql >> база данни >  >> RDS >> Mysql

PHP рекурсивната функция за изтриване на всички дъщерни възли причинява препълване на стека

Проблемът е в рекурсивното извикване:

remrecurs($curitem['parent']);

трябва да бъде:

remrecurs($curitem['id']);

Защо?

Вашата цел е да изтриете реда с даден идентификатор. Първо проверете дали има деца. Ако да, трябва да извикате рекурсивното изтриване на всяко от децата не отново на родителя. Отново извиквате функцията рекурсивно на родителя..това води до безкрайни рекурсивни извиквания, разбивате стека и се срива.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ГРЕШКА 1054 (42S22):Неизвестна колона „‍‍“ в „списък с полета“

  2. Как да намерите елемент от списък на определена позиция в MySQL

  3. Свързване на MySQL от JSP

  4. Йерархични данни в MySql

  5. Кеширане на данни в PHP SESSION или заявка от db всеки път?