Fehlermeldung bei Mitgliedsbeitrag

Hast du Probleme oder Fragen bei der Einrichtung bestimmter Plugins ? Diese kannst du hier loswerden.
Antworten
wisi01
Beiträge: 36
Registriert: 21. Mai 2021, 13:22

Fehlermeldung bei Mitgliedsbeitrag

Beitrag von wisi01 »

Hallo – ich steh leider schon wieder mal am Ende meiner Weisheit und muss euch um Hilfe bitten:
Wir sind in unserem kleinen Sportverein hinsichtlich der Mitgliederverwaltung immer noch im „Testmodus“ – und dazu hab ich Admidio auf einem Webserver zweimal installiert. Einmal ganz normal unter www.domain.xyz und ein zweites mal unter www.test.domain.xyz Beide Installationen greifen zwar auf dieselbe SQL-Datenbank zu, die Tabellen dort haben aber unterschiedliche Präfix.
Nun hab ich bei der „Testinstallation“ das Admidio-Update auf 4.1.5 vorgenommen und dabei auch das Plugin Mitgliedsbeitrag auf Version 5.1.0 upgedatet. Wenngleich ich da anfangs ein kleines Problem hatte läuft diese Update jetzt problemlos. Einzig das Plugin „Mitgliedsbeitrag“ funktioniert nicht mehr – und zwar interessanterweise auf beiden Installationen. Nachdem ich den Debug-Modus aktiviert habe bekomme ich bei beiden Installationen nach dem Klick auf "Mitgliedsbeitrag" einen Fehler...
Hier die Fehlermeldungen die ich im Webbrowser erhalte:

Code: Alles auswählen

 
Version: Admidio 4.0.12 - Mitgliedsbeitrag 5.0.2
Warning: A non-numeric value encountered in /www/htdocs/xmy_domainx/admidio/adm_plugins/mitgliedsbeitrag_5/common_function.php on line 498
Warning: A non-numeric value encountered in /www/htdocs/xmy_domainx/admidio/adm_plugins/mitgliedsbeitrag_5/common_function.php on line 504

Version: Admido 4.1.5 - Mitgliedsbeitrag 5.1.0
Notice: A non well formed numeric value encountered in /www/htdocs/xmy_domainx/test/adm_plugins/mitgliedsbeitrag_5/common_function.php on line 489
Notice: A non well formed numeric value encountered in /www/htdocs/xmy_domainx/test/adm_plugins/mitgliedsbeitrag_5/common_function.php on line 495
Warning: A non-numeric value encountered in /www/htdocs/xmy_domainx/test/adm_plugins/mitgliedsbeitrag_5/mitgliedsbeitrag.php on line 387
Warning: A non-numeric value encountered in /www/htdocs/xmy_domainx/test/adm_plugins/mitgliedsbeitrag_5/mitgliedsbeitrag.php on line 389
Warning: Cannot modify header information - headers already sent by (output started at /www/xmy_domainx/test/adm_plugins/mitgliedsbeitrag_5/common_function.php:489) in /www/xmy_domainx/test/adm_program/system/classes/HtmlPage.php on line 423
 
Soweit ich das sehe zeigt die Fehlermeldung in beiden Fällen auf dasselbe Feld hin. Dazu muss ich angeben, dass mein Freund ohne meines Wissens bei den beiden Felder „IBAN“ und „BIC“ die Berechtigung „Feld nur für Benutzer:innen mit dem Recht Profildaten aller Mitglieder bearbeiten editierbar“ geändert hat. Kann es sein, dass sich das Plugin Mitgliedsbeitrag nun daran stößt? Beim Aufruf der „installation.php“ werden jedenfalls genau diese beiden Felder im Schritt 2 als Abweichend angezeigt. Eine Änderung der Einstellung hat jedoch bislang allerdings auch nichts gebracht…

Vielleicht kann mir ja von euch wer auf die Sprünge helfen…
LG wisi01
rmb
Plugin-Developer
Beiträge: 632
Registriert: 10. Mai 2011, 19:56
Wohnort: 86856

Re: Fehlermeldung bei Mitgliedsbeitrag

Beitrag von rmb »

Hallo wisi01,

nur zum Verständnis:
Ihr habt zwei Admidio-Installationen mit 2x installiertem Plugin Mitgliedsbeitrag. Nachdem ihr bei einer Admidio-Installation ein Update durchgeführt habt (inkl. Update von Mitgliedsbeitrag) funktioniert Mitgliedsbeitrag bei der anderen Admidio-Installation nicht mehr (laut Screenshot ist einmal noch Mitgliedsbeitrag v5.0.2), obwohl hier nichts verändert wurde. Ist das richtig?

Jetzt zu Mitgliedsbeitrag v5.1.0:
Alle Warnungen hier beziehen sich entweder auf das Profilfeld IBAN oder auf den Beitrag, bzw. die Anzahl der Mitglieder einer Rolle. Der Fehler könnte z.B. sein, dass in irgendeiner Rolle im Feld Beitrag nicht nur eine Zahl steht, sondern ein gemischter Wert, wie 50€. Der Fehler könnte aber auch eine zu neue PHP-Version sein. Welche PHP-Version habt Ihr?

Ich würde folgendermaßen vorgehen:
In allen Rollen, in denen ein Beitrag und ein Beitragszeitraum steht, diese Werte entfernen. Bis auf eine Rolle. Es darf nur eine Rolle mit Beitrag (z.B. 50) und Beitragszeitraum (z.B. monatlich) vorhanden sein. In dieser Rolle soll nur ein Mitglied sein. Bei diesem einem Mitglied prüfen, ob IBAN, Beitrag und Beitragstext vorhanden sind.
Und jetzt das Plugin nochmal starten.

Gruß
rmb
wisi01
Beiträge: 36
Registriert: 21. Mai 2021, 13:22

Re: Fehlermeldung bei Mitgliedsbeitrag

Beitrag von wisi01 »

Hallo rmb!
Vorerst mal vielen Dank für deine Mithilfe!
Ja, ich habe Admidio zweimal installiert. Ich bin ja immer noch dabei, diverse Funktionen zu testen und zudem muss der Kassier und die beiden Vorstände noch eingeschult werden. Also haben wir Admidio einfach ins Verzeichnis „admidio“ installiert aber noch keinen direkten Link auf dieses Verzeichnis gesetzt.
Zudem habe ich am selben Server eine Subdomain (also test.domain.xyz) eingerichtet und hier Admidio ein zweites mal installiert. Läuft natürlich am selben Server und die Daten landen in derselben Datenbank – nur mit anderen Präfix bei den Tabellen.

Ich konnte das Problem inzwischen lösen – allerdings kann ich nicht mit absoluter Sicherheit sagen, woran es lag. Ich vermute mal, dass es wohl die php-Version war. Ich hab die php-Version auf php 8.0 angehoben und dann bei meiner „Testinstallation“ ein Update auf Admidio 4.1.5 gemacht. Unser Kassier hat inzwischen auf der „normale Installation“ (also auf domain.xyz mit Admidio 4.0.12) gearbeitet. Was auch immer dann schief gegangen ist – jedenfalls hat der Aufruf des Plugins nicht mehr funktioniert.

Ich hab jetzt die php-Version wieder auf php 7.4.1 zurück gestellt und zudem folgende Schritte vorgenommen:
Da wir aktuell ja noch keine Kontodaten in der Datenbank haben konnte ich über die Deinstallationsfunktion des Plugins die Felder IBAN, BIC, BANK, etc. löschen (die Daten im Bereich Mitgliedsbeitrag wurden natürlich NICHT gelöscht!) Danach wurden über die Installationsroutine die nunmehr fehlenden Datenbankfelder wieder neu erstellt und ab diesen Punkt lief wieder alles wie am Schnürchen. Der selbe Vorgang führte auch bei Admidio 4.0.12 (mit Mitgliedsbeitrag v5.0.2) zum Erfolg.
Nach meiner laienhaften Einschätzung dürfte also die kurzzeitige Umstellung auf php 8.0 einen Fehler bei einer Felddefinition verursacht haben. Nachdem die Felder nun unter php 7.4.1 neu erstellt wurden passt die Felddefinition wieder und alles läuft normal - soweit meine Vermutung.

So – hoffe das war jetzt kein zu langer Roman…
Nochmals Danke für eure tolle Arbeit!
Wisi01
Antworten