Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 17. Dezember 2010 21:17

piratos
Gast

[GELÖST] DLM

Während cmsms  aktuell unter E_strict mit den Systemmodulen läuft macht der DLM


Strict Standards: Declaration of DLM::CreateInputDropdown() should be compatible with that of CMSModule::CreateInputDropdown() in /var/www/cmsms/modules/DLM/DLM.module.php on line 644
Strict Standards: Declaration of DLM::GetTemplate() should be compatible with that of CMSModule::GetTemplate() in /var/www/cmsms/modules/DLM/DLM.module.php on line 644

diese Meldung - stellt für mich aber kein Problem dar.

Unter Chrome bietet er ein Download dann allerdings unter dem Scriptname.php an und das scheint mir nicht ok zu sein, das gleiche unter Safari - abgeliefert wird nichts.
Ich vermute mal eine header - Sache.

#2 18. Dezember 2010 00:32

dc2
kennt CMS/ms
Registriert: 26. November 2010
Beiträge: 140
Webseite

Re: [GELÖST] DLM

Ja, das wird tatsächlich ein Problem mit den Headern sein, ich nutze dafür "'Content-Disposition: attachment; filename=...". So wie es aussieht haben die Webkit Browser wohl ein Problem damit. Danke für den Hinweis, ich werde das sobald ich Zeit habe korrigieren smile

Zu der E-Strict-Warnung: Während ich entwickelt hab kam die nich (1.8.2), setzt du eine neuere Version ein? Beim nächsten Update werde ich die Fehler gleich mit beseitigen.


Edit: Solange der Fehler noch besteht, könntest du als statt der Ausgabe via PHP erstmal die einfache Weiterleitung einstellen, das verhindert zumindest den falschen Dateinamen.

Beitrag geändert von dc2 (18. Dezember 2010 00:35)

Offline

#3 18. Dezember 2010 10:21

piratos
Gast

Re: [GELÖST] DLM

CMSMS aktuelle Version .

In meinen Scripten funzt eine solche Headerzusammenstellung:

    @ob_start('ob_gzhandler');   
    header('Content-Type: application/x-gzip');
    header('Accept-Ranges: bytes');
    header('Content-Encoding: none');
    header('Content-Type: application/octetstream');
    header('Content-Encoding: none');
    header('Content-Transfer-Encoding: binary');
    header('Content-Disposition: filename="' . $name1 . '"');
    header('Cache-Control: private');
    header('Connection: close');

#4 18. Dezember 2010 12:09

dc2
kennt CMS/ms
Registriert: 26. November 2010
Beiträge: 140
Webseite

Re: [GELÖST] DLM

Ich habe keine Gänsefüßchen um den Dateinamen, vielleicht ist das ja das Problem.
Könntest du vielleicht mal auprobieren, in Zeile 85 der Datei "action.download.php" welchen hinzuzufügen?

Offline

#5 18. Dezember 2010 14:45

piratos
Gast

Re: [GELÖST] DLM

Zunächst zu den E_STRICT - zu mehr habe ich keine Zeit.

Die Meldungen zermarmeln übrigens auch die Optik des Backend.

209 in DLM module

function CreateInputDropdown($id, $name, $items, $selected = -1,$selectedvalue='',$addtext = '')

Zeile 187 in DLM Module

function GetTemplate($tpl,$modulename = 'DLM'){

#6 18. Dezember 2010 15:05

dc2
kennt CMS/ms
Registriert: 26. November 2010
Beiträge: 140
Webseite

Re: [GELÖST] DLM

Ich überlade die Methoden von der Klasse CMSModule, eigentlich dürfte das keine Meldung geben, ich weiß allerdings auch nicht ganz genau, wie PHP da im speziellen tickt.

Die Fehlermeldung ist auch irgendwie ein bisschen nichtssagend, soll das heißen, dass die Parameter gleich sein sollen? Eigentlich habe ich ja gerade eine eigene Methode geschrieben, weil ich sie mit anderen Parametern aufrufen möchte.

Hast du vielleicht eine Ahnung?

Offline

#7 18. Dezember 2010 16:00

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.436

Re: [GELÖST] DLM

Genau das ist das Problem.
Wenn Du Methoden überschreibst, müssen sie zumindest im Aufruf haargenau so sein wie die Originalmethode. Was sich im Inneren abspielt ist egal. Aber es müssen exakt dieselben Parameter sein. Die dürfen nicht mal anders geschrieben werden oder einen Standardwert haben, wenn es die Originalmethode nicht hat.

Ich weiß selber nicht genau warum das so ist, aber wenn das die Regel ist, dann muss man sich eben eine eigene Methode schreiben, die dann alles so vorbereitet, dass bedenkenlos die parent Methode aufgerufen werden kann. Deswegen findet sich einigen Modulen (deren Entwickler ich jetzt nicht lieber nennen will) immer sowas wie:

function myCreateInputDropdown(...) {
   ...
}
function myRedirect(...) {
   ...
}

Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#8 18. Dezember 2010 16:15

dc2
kennt CMS/ms
Registriert: 26. November 2010
Beiträge: 140
Webseite

Re: [GELÖST] DLM

Hm, sehr seltsam.. die Objektorientierung ist wohl immer noch nicht richtig angekommen bei PHP.

Nungut, ich werde das dann wohl ändern.


Was ich allerdings ein bisschen komisch finde: ich entwickle eigentlich auch immer unter E-Strict, allerdings kam die Meldung bei mir nicht vor, zumindest kann ich mich nicht daran erinnern^^

Beitrag geändert von dc2 (18. Dezember 2010 16:16)

Offline

#9 18. Dezember 2010 16:36

piratos
Gast

Re: [GELÖST] DLM

Ich schreibe immer unter aktuellen PHP Versionen  also 5.3.4.
Error_reporting ist dezimal 32767 und natürlich müsste man auch display_errors auf On setzen ansonsten geht es in die Log.

#10 18. Dezember 2010 16:38

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.436

Re: [GELÖST] DLM

Wer weiß, ich bekomme auch nicht immer alle Fehlermeldungen.
Vielleicht wird error_reporting irgendwo im Core auch wieder neu auf E_ALL gesetzt.
Deswegen nehme ich dazu immer noch - ich weiß, er hilft nicht viel, aber dann werden wenigstens keine Fehler unterdrückt - den Debug-Modus.
Außerdem habe ich in der include.php die Zeile 142 in

@error_reporting(E_ALL | E_STRICT | E_DEPRECATED);

geändert.
Und die Zeile 230 in

$smarty->error_reporting = 'E_ALL | E_STRICT | E_DEPRECATED';

Sobald debug eingeschaltet ist, bekomme ich dann so ziemlich alles an Fehlermeldungen zu sehen.


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#11 18. Dezember 2010 16:59

piratos
Gast

Re: [GELÖST] DLM

Speziell unter Smarty 2 kann es sein das man nicht alles zu sehen bekommt wenn z.B. ein Plugin  bei der Abarbeitung ein Fehler wirft der dann fürs Auge nicht mehr sichtbar durch das Haupttemplate bzw. nachfolgende Aktion auf dem Screen überschrieben wird  ( das sieht bei Smarty 3 ganz anders aus - da ist absemmeln angesagt , was zwar lästig aber für Entwicklung optimal ist) .

Es kann auch sein das man über ein redirect das schon nicht mehr sehen kann.

Bei mir habe den Pfad vom error_log auf  mein home Verzeichnis gelegt und diese Datei in einem Task mit einem einfachen Editor geöffnet. Wird dann etwas in die Log geschrieben zeigt mir der Editor an das die Datei geändert wurde und schwupp sieht man dann auch solche Dinger.

Beitrag geändert von piratos (18. Dezember 2010 17:00)

#12 18. Dezember 2010 17:39

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.436

Re: [GELÖST] DLM

Coole Idee.
Fehlerkonsole zum selber basteln big_smile


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#13 30. März 2011 11:00

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: [GELÖST] DLM

dc2 schrieb:

Nungut, ich werde das dann wohl ändern.

Ist zu dem Modul in nächster Zeit etwas neues zu erwarten?

Ist eigentlich eine Kategorienansicht vorgesehen?

Offline

#14 30. März 2011 16:01

dc2
kennt CMS/ms
Registriert: 26. November 2010
Beiträge: 140
Webseite

Re: [GELÖST] DLM

Prinzipiell schon, ich finde aktuell aber kaum Zeit für solche Projekte, da das Studium doch ziemlich viel Arbeit mit sich bringt^^

Mal sehen, ob ich in den Semesterferien im Sommer mal wieder ein bisschen weiter komme..

Offline

#15 31. März 2011 15:00

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: [GELÖST] DLM

Also hast du auch keine Zeit für die Download-Ecke hier cry ?

Hattest du die von Piratos und NaN vorgeschlagenen Änderungen eigentlich schon eingearbeitet (SVN-Version oder so)?

Offline

#16 01. April 2011 18:32

dc2
kennt CMS/ms
Registriert: 26. November 2010
Beiträge: 140
Webseite

Re: [GELÖST] DLM

Bin schon seit ein paar Monaten leider zu nichts mehr gekommen diesbezüglich.
Wie sieht denn die aktuelle Planung mit dem Modul-Repository hier aus? Vielleicht finde ich ja bald mal wieder ein paar freie Stunden^^

Offline

#17 04. April 2011 10:18

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: [GELÖST] DLM

Wie gesagt, nach meiner Vorstellung sollte es eine Art Download-Ecke werden, nicht so komplex wie das Forge, einfach ein Angebot lauffähiger Module.

Zeitlich sollte es nach dem neuen Template dran kommen, jedoch werden die daran Beteiligten aufgrund deren aktueller Auftragslage etwas ausgebremst roll , so dass ich überlege, die Download-Ecke vorzuziehen.

Offline