Thread: (PHP) Rekursives Löschen von Foren inkl. Threads und Beiträgen
Eröffnet am: 15.02.2010 18:54 Letzte Reaktion: 15.02.2010 20:12 Beiträge: 2 Status: Offen |
Unterforen: - Computer & Technik |
|
Verfasser | Betreff | Datum | |||
---|---|---|---|---|---|
| |||||
KyodaiKen | (PHP) Rekursives Löschen von F... | 15.02.2010, 18:54 | |||
KyodaiKen | (PHP) Rekursives Löschen von F... | 15.02.2010, 20:12 | |||
|
|
|||||||
Hallo, ich habe folgendes Problem: Ich habe gerade eine Denkblokade und weiß nicht, wie ich in PHP einen rekursiven Aufruf zum Löschen eines Forums inklusive Unterforen, Threads und Beiträgen hinbekomme. Ungerne möchte ich die komplette Tabellenstruktur hier posten, aus Sicherheitsgründen. Allerdings biete ich euch die nötigen Informationen wie folgt an: In der Datenbank besteht das Forum nur aus einer einzigen Tabelle. Jeder Eintrag hat eine Differenzierung zwischen den Typen: 0=Forum; 1=Thread; 2=Post; 3=Trenner. Jeder Eintrag hat auch eine 'parent_id', mit der man die Einträge in einander verschachteln kann, sagen wir mal unterordnen kann. Stark vereinfacht hier mal eine Struktur eines Forums: id parent type title 1 0 0 PHP 2 1 0 Fortgeschritten 3 1 0 Anfänger 4 2 1 Datenbank absichern. Wie? 5 4 2 Gutes Passwort ist das A und O 6 3 1 Sessions Wie muss ich die Abfragen generieren, wenn ich jetzt das komplette PHP-Forum mit dem gesamten Inhalt löschen möchte? Ich benutzte msqli auf OO-Basis. Das hier ist jedenfalls das, was ich bisher habe, ist aber ein PSEUDO-CODE Function DeleteForum(/* assoc_array */ $forum) { Alle Einträge abfragen, die diesem Forum untergeordnet sind Wenn keine gefunden wurden, abbrechen Für jedes dieser Einträge: Die Funktion selbst wieder aufrufen, mit dieser ID DELETE-Abfrage ausführen } Ich hoffe ihr könnt mir helfen. Grüße, BS |
|
|||||||
Ah ich hab's doch hinbekommen ^^'. $db steht für eine verbundene Datenbank mit mysqli als Objekt.
Die DEBUG-Zeilen sind einfach zur Fehlerkontrolle da. Diese sollten dann beim produktiven Einsatz gelöscht oder ganz auskommentiert werden. |