sql >> Database >  >> RDS >> Mysql

PHP recursieve functie om alle onderliggende nodes te verwijderen veroorzaakt stackoverflow

Het probleem zit in de recursieve aanroep:

remrecurs($curitem['parent']);

het zou moeten zijn:

remrecurs($curitem['id']);

Waarom?

Uw doel is om de rij met de opgegeven id te verwijderen. Eerst kijk je of hij kinderen heeft. Zo ja, dan moet u de recursieve delete aanroepen op elk van de children niet meer op de ouder. Je roept de functie weer recursief aan op de ouder. Dit leidt tot oneindig veel recursieve aanroepen, je ramt de stapel en crasht.



  1. get_result() Werkt niet, zelfs mysqlnd is ingeschakeld

  2. Agent Decomission in EM13c

  3. MySQL relationele databases gebruiken op Debian 6 (Squeeze)

  4. Hoe make_interval() werkt in PostgreSQL