PIFA Formular-Assistent

Alles rund um Module und Plugins in CONTENIDO 4.10.
xmurrix
Beiträge: 3149
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Kontaktdaten:

Re: PIFA Formular-Assistent

Beitrag von xmurrix » Mi 3. Jan 2024, 13:04

Hallo Lars,
lunsen_de hat geschrieben:
Fr 29. Dez 2023, 11:09
In der Errorlog steht:

Code: Alles auswählen

[29-Dec-2023 11:03:03 Europe/Berlin] PHP Fatal error:  Uncaught cException: Tried to load a single line with field name and value form_import from con_area but found more than one row in /var/www/vhosts/domain/httpdocs/contenido/classes/genericdb/class.item.php:167
Stack trace:
#0 /var/www/vhosts/domain/httpdocs/contenido/classes/contenido/class.area.php(208): Item->loadBy()
#1 /var/www/vhosts/domain/httpdocs/contenido/classes/class.permission.php(361): cApiAreaCollection->getAreaId()
#2 /var/www/vhosts/domain/httpdocs/contenido/plugins/form_assistant/includes/include.left_top.php(35): cPermission->have_perm_area_action()
#3 /var/www/vhosts/domain/httpdocs/contenido/main.php(212): include_once('...')
#4 {main}
  thrown in /var/www/vhosts/domain/httpdocs/contenido/classes/genericdb/class.item.php on line 167
leider kann ich nicht nachvollziehen, wie es bei dir zu diesem Fehler gekommen ist.

Der Plugin-Manager kümmert sich um die Installation/Deinstallation von Plugins und darum, dass die Einträge in der jeweiligen plugin.xml in die Datenbank übernommen oder auch daraus entfernt werden.

In der plugin.xml stehen Werte für das Plugin drin, die im CONTENIDO-Backend an diversen Stellen übernommen werden, also in Tabellen "con_area", "con_action", "con_file", "con_frame_files" usw.

Die plugin_install.sql eines Plugins enthält das SQL für die Plugineigenen DB-Tabellen, im Fall von PIFA also "con_pifa_form" und "con_pifa_field", usw.

Wenn es da ein Problem geben sollte, dann liegt es im Zuständigkeitsbereich des Plugin-Managers, allerdings ist mir bisher so ein Fall nicht vorgekommen. Es gibt in GitHub ein Ticket für die Überarbeitung des Plugin-Managers. Da könnte man sich überlegen, bei der Installation zu prüfen, ob es die Einträge in der DB gibt, bevor man sie erstellt, auf die Gefahr hin, dass man eventuell Einträge anderer Plugins überschreibt.
CONTENIDO Downloads: CONTENIDO 4.10.1
CONTENIDO Links: Dokumentationsportal, FAQ, API-Dokumentation
CONTENIDO @ Github: CONTENIDO 4.10 - Mit einem Entwicklungszweig (develop-branch), das viele Verbesserungen/Optimierungen erhalten hat und auf Stabilität und Kompatibilität mit PHP 8.0 bis 8.2 getrimmt wurde.

Faar
Beiträge: 1915
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Kontaktdaten:

Re: PIFA Formular-Assistent

Beitrag von Faar » Mi 3. Jan 2024, 14:01

xmurrix hat geschrieben:
Mi 3. Jan 2024, 13:04
Es gibt in GitHub ein Ticket für die Überarbeitung des Plugin-Managers. Da könnte man sich überlegen, bei der Installation zu prüfen, ob es die Einträge in der DB gibt, bevor man sie erstellt, auf die Gefahr hin, dass man eventuell Einträge anderer Plugins überschreibt.
Ich hatte auch hin und wieder den Fall, dass Einträge in der DB zurückblieben, bei Installation-Deinstallation.
Nicht alle Plugins achten oder achteten darauf, dass bei Deinstallation alle DB-Einträge gelöscht werden* und prüfen, ob es bereits eine Installation mit Dateninhalten gibt. Eventuell gibt es doppelte Einträge. PHPmyadmin könnte da nützlich sein.
Da müsste man sich auch den Code der Installation des Plugins jeweils anschauen.

*OT: Bei Wordpress war und ist das ganz schlimm teilweise (gewesen), jeglicher Datenmüll wurde einfach zurückgelassen bei Deinstallation.
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.

Antworten