Seite 7 von 22

Re: [3.2][3.3][RC] Userreminder

Verfasst: 16.04.2020 16:32
von Octopus
Super, danke!!

Jetzt funktioniert alles.....

Re: [3.2][3.3][RC] Userreminder

Verfasst: 16.04.2020 19:51
von Mike-on-Tour
Oops, sorry für den Flüchtigkeitsfehler :oops: , habe ihn korrigiert, die korrekte zip-Datei steht zum Download bereit.
Danke an Crizzo für die schnelle Aufklärung.

Re: [3.2][3.3][RC] Userreminder

Verfasst: 16.04.2020 19:54
von Crizzo
Mit der composer.phar kannst du die Composer.json validieren, nachdem du sie geändert hast.

Siehe https://getcomposer.org/doc/03-cli.md#validate :)

Re: [3.2][3.3][RC] Userreminder

Verfasst: 16.04.2020 20:02
von Mike-on-Tour
Danke für den Hinweis, werde ich zukünftig machen

Re: [3.2][3.3][RC] Userreminder

Verfasst: 25.05.2020 07:18
von VolkerF
Hallo,

nach Aktivierung und Nutzung des Userreminder, welcher auch funktioniert, erscheint trotzdem täglich folgender General Error wenn man das Forum benutzt. Nach Aktualisierung des Browsers erscheint dann der Fehler für den Tag nicht mehr, aber am nächsten Tag ist er wieder da.

[ externes Bild ]

Was kann/muss man tun um diese´ Fehlermeldung zu vermeiden ?

Danke Volker

Re: [3.2][3.3][RC] Userreminder

Verfasst: 25.05.2020 23:13
von Mike-on-Tour
Wir hatten ja per eMail schon verschiedene mögliche Ursachen besprochen, die aber leider alle nicht zutrafen. Da scheint ja irgendwo ein 'ORDER ' vor dem 'BY user_id' zu fehlen, aber die vier möglichen Stellen in deinem Source Code waren okay.
Allerdings lese ich jetzt erstmalig, dass der Fehler nur einmal am Tag auftaucht. Das sieht dann mehr nach einem Cron Job aus, der den Fehler verursacht, und ein solcher ist im Userreminder nicht implementiert.

Re: [3.2][3.3][RC] Userreminder

Verfasst: 26.05.2020 10:47
von Dr.Death
Deine Extension prüft doch täglich ob Reminder gesendet werden sollen.


GGf. könnte der Fehler in einem fehlende Leerzeichen stecken:

mot/userreminder/event/main_listener.php

Code: Alles auswählen

				$query = 'SELECT user_id
						FROM  ' . USERS_TABLE . '
						WHERE (user_type = ' . USER_NORMAL . ' OR user_type = ' . USER_FOUNDER . ')
						AND user_posts > 0
						AND mot_reminded_two > 0
						AND mot_reminded_two <= ' . (int) $day_limit;			// get all users who have been inactive since the 2nd reminder for at least the number of days specified in settings

				if ($this->config['mot_ur_protected_members'] <> '')	// prevent sql errors due to empty string
				{
					$query .= ' AND user_id NOT IN (' . $this->config['mot_ur_protected_members'] . ') ';
				}
				$query .= 'ORDER BY user_id';
Wenn jetzt der "if" Block nicht beachtet wird, knallt das 'ORDER BY user_id' direkt an AND mot_reminded_two <= ' . (int) $day_limit;
Somit wird das "ORDER" nicht erkannt und wirft den Fehler.


Lösung wäre demnach ein Versuch wert:

$query .= 'ORDER BY user_id'; in $query .= ' ORDER BY user_id'; ändern.

Re: [3.2][3.3][RC] Userreminder

Verfasst: 26.05.2020 12:24
von Mike-on-Tour
Hallo Doc,
du hast Recht, das ist die Stelle. Ich konnte den Fehler nachvollziehen, der muss aber bei jedem Login aufgetaucht sein und nicht einmal am Tag (es sei denn, man hat sich nur einmal am Tag in dieses Forum eingeloggt).
Ich habe den Fehler berichtigt und die zum Download bereitstehende zip-Datei ebenfalls.
Für alle, die nur die fehlerhafte Datei ('/ext/mot/userreminder/event/main_listener.php') austauschen möchten, diese ist unter dem folgenden Link als zip-Datei zum Download verfügbar.

Re: [3.2][3.3][RC] Userreminder

Verfasst: 30.05.2020 12:04
von VolkerF
Hallöchen nochmal,

nachdem der Fehler nun gefunden ist, ist ein neues Problem aufgetaucht. Wenn man bei den Erweiterungen bei Userreminder auf "Mitglieder erinnern" geht sind doch bei jedem Namen ganz hinten die Tabs "Erinnern" und "Löschen". Dort waren vorher bei jedem Namen Kästchen die man anhaken konnte. Die sind nun verschwunden seit der Fehler korrigiert wurde. Was nun ?

[ externes Bild ]

Danke und gruß Volker

Re: [3.2][3.3][RC] Userreminder

Verfasst: 30.05.2020 13:55
von Mike-on-Tour
Das ist so gewollt, die tauchen automatisch wieder auf, sobald die im ACP eingestellten Wartezeiten abgelaufen sind, in diesem konkreten Fall also die Anzahl der Tage zwischen 1. und 2. Erinnerung. Auf dem Bild ist zu erkennen, dass die 1. Erinnerung vor 8 Tagen erfolgte, wenn du die Standardeinstellung von 10 Tagen bzwischen 1. und 2. Erinnerung beibehalten hast, taucht das Kästchen zum Erinnern übermorgen wieder auf (vorher hätte ja eine weitere Erinnerung noch keinen Sinn), bzw. bei eingeschaltetem automatischen Versand der Erinnerungs-Email wäre dann datum und Uhrzeit des Versandes der 2. Erinnerung eingetragen. Analog läuft das dann mit dem Löschen.