SQL-Fehler bei Berechtigungen von Downloads

Hast du einen Fehler in der aktuellen Version gefunden ? Diesen kannst du uns hier mitteilen und uns bei der Fehlersuche helfen.
Antworten
chirimoya
Beiträge: 8
Registriert: 13. Mai 2008, 12:39

SQL-Fehler bei Berechtigungen von Downloads

Beitrag von chirimoya »

Hallo,
erstmal Gratulation und vielen Dank für die tolle Software! Bin jetzt die Tage darauf gestoßen und möchte sie gerne in unsere Seite integrieren.

Ich habe jetzt die Version 2.0 mal installiert und es funktioniert auch soweit alles. Nur wenn ich die Berechtigung von den Downloads einschränken will auf nur registrierte Benutzer (also über: Berechtigungen setzen - Öffentlicher Zugriff ist nicht erlaubt. usw.) kommt, wenn ich im ausgeloggten Zustand (also ohne Berechtigung) darauf zugreife folgende Fehlermeldung:

Code: Alles auswählen

S Q L - E R R O R

CODE: 1064
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AND mem_valid = 1' at line 6

B A C K T R A C E

FILE: adm_program/system/mysql_class.php
LINE: 77
CALL: mysqldb->db_error()

FILE: adm_program/system/folder_class.php
LINE: 106
CALL: mysqldb->query()

FILE: adm_program/modules/downloads/downloads.php
LINE: 56
CALL: folder->getfolderfordownload()
Im eingeloggten Zustand (mit Berechtigung) kann ich wunderbar darauf zugreifen.
Woran könnte das denn liegen?

Vielen Dank schon mal für eure Hilfe,
chirimoya
Elle
Former team member
Beiträge: 173
Registriert: 16. Jan 2006, 17:11

Beitrag von Elle »

ups, das muss ich mir mal anschauen...

Melde mich wahrscheinlich heute abend noch einmal!

Gruß
Elle
Elle
Former team member
Beiträge: 173
Registriert: 16. Jan 2006, 17:11

Beitrag von Elle »

Hallo chirimoya,

ich habe den Fehler gefunden und auch gefixt... Demnächst wird es wohl ein kleines Bugfixrelease geben...

Ich schicke Dir die geänderte Datei schon einmal per PN zu, dann kannst Du das bei Dir, wenn Du möchtest, schon einmal einspielen...

Gruß
Elle

P.S.: Mist, ich stelle gerade fest, dass ich per PN keine Dateien verschicken kann... Am besten Du schickst mit per PN Deine Mailadresse dann gebe ich Dir die Datei auf diesem Weg weiter...
Solluh
Beiträge: 60
Registriert: 25. Feb 2007, 20:30
Wohnort: bei Berlin
Kontaktdaten:

Fehler

Beitrag von Solluh »

Hallo Elle,

denselben Fehler habe ich auch, kannst Du mir den Fix bitte ebenfalls zumailen, bitte? Meine E-Mailadresse habe ich Dir per PM mitgeteilt.

Gruß vom Olaf
chirimoya
Beiträge: 8
Registriert: 13. Mai 2008, 12:39

Beitrag von chirimoya »

Ich habe jetzt mal auf Version 2.01 geupdated, wodurch der Fehler genauso behoben ist, wie bei der zuvor gemailten Datei.

Möchte ich nun im ausgeloggten Zustand auf die Downloads zugreifen, wird mir eine Fehlermeldung mit "Ungültiger Seitenaufruf!" angezeigt. Hier wäre es natürlich schöner, wenn man direkt zu dem Login-Formular weitergeleitet würde, wie bei den anderen Modulen auch. Ist dies machbar?
Elle
Former team member
Beiträge: 173
Registriert: 16. Jan 2006, 17:11

Beitrag von Elle »

Hi,

so leicht ist das im Moment nicht machbar...

Ich habe die ganze Logik, ob auf einen Ordner zugegriffen werden darf oder nicht, direkt in der folder_class.php verdrahtet...

Existiert der Ordner nicht, oder hat der Benutzer kein Recht an dem Ordner wird in der zuständigen Methode immer ein leeres Objekt zurück gegeben. In der downloads.php ist daher nicht nachvollziehbar ob der Benutzer kein Recht hat oder ob der Ordner gar nicht existiert...

Fest steht an dieser Stelle allerdings das dies für den Benutzer keine valide folder_id ist, daher die Standard-Fehlermeldung "Ungültiger Seitenaufruf!"...

Es wird nicht zum Login-Formular weiter geleitet, da Admidio nicht weiss ob sich an der Situation etwas ändert sobald der User eingeloggt ist... Es kann ja sein, dass trotz Login der User keine Berechtigung an dem Ordner hat bzw. dass die FolderId nicht exisitert.

Vielleicht noch als Workaround:
Wenn Du nicht möchtest, dass diese Fehlermeldung erscheint, dann mache den obersten Ordner im Downloadmodul für alle (public) zugänglich. Deine echten Downloads mit Zugriffskontrolle legst Du einfach in einen Unterordner, den Du dann mit den entsprechenden Rechten versiehst. Wechselt ein user ohne Rechte dann in den Downloadbereich bekommt er nur einen leeren Ordner zu sehen und keine Fehlermeldung...

Gruß
Elle
Antworten