Exemplo n.º 1
0
 public function deleteInDatabase($photo_id)
 {
     $return_code = true;
     $this->db->startTransaction();
     // erst einmal rekursiv zur tiefsten Tochterveranstaltung gehen
     $sql = 'SELECT pho_id FROM ' . TBL_PHOTOS . '
                  WHERE pho_pho_id_parent = ' . $photo_id;
     $result1 = $this->db->query($sql);
     while ($row = $this->db->fetch_array($result1)) {
         if ($return_code) {
             $return_code = $this->deleteInDatabase($row['pho_id']);
         }
     }
     // nun DB-Eintrag und Ordner loeschen
     if ($return_code) {
         //Ordnerpfad zusammensetzen
         $folder = SERVER_PATH . '/adm_my_files/photos/' . $this->getValue('pho_begin', 'Y-m-d') . '_' . $photo_id;
         // aktuellen Ordner incl. Unterordner und Dateien loeschen, falls er existiert
         if (file_exists($folder)) {
             // nun erst rekursiv den Ordner im Dateisystem loeschen
             $myFilesPhotos = new MyFiles('PHOTOS');
             $myFilesPhotos->setFolder($folder);
             $return_code = $myFilesPhotos->delete($folder);
         }
         if ($return_code) {
             // Veranstaltung jetzt in DB loeschen
             $sql = 'DELETE FROM ' . TBL_PHOTOS . '
                      WHERE pho_id = ' . $photo_id;
             $this->db->query($sql);
         }
     }
     $this->db->endTransaction();
     return $return_code;
 }