Modul stand-alone funktioniert - Contenido zeigt Fehler

Gesperrt
Caddata
Beiträge: 19
Registriert: Fr 28. Nov 2003, 13:42
Wohnort: Bremerhaven
Kontaktdaten:

Modul stand-alone funktioniert - Contenido zeigt Fehler

Beitrag von Caddata » Do 2. Sep 2004, 07:42

Hallo,

ich habe einProblem mit einem selbstgeschriebenen Modul.

Es handelt sich dabei um einen Formular-Wizard, basierend auf PEAR::HTML_QuickForm_Controller.

Wenn ich das Modul als Stand-Alone starte, geht alles bestens. Auch auf dem Server, auf dem Contenido läuft.
Kopiere ich den Quelltext aber in den Contenido-Modul-Output, zeigt Contenido mir eine rote Lampe - der Quellcode soll also Fehler haben.

Wie kann das sein?
Prüft Contenido auch die eingebundenen Dateien mit eval()?
Die Subklasse Action_Jump produziert einen fehler, weil sie versucht einen Header zu senden, nachdem der Output gestartet ist. Könnte es daran liegen? Das passiert aber erst zur Laufzeit, also nicht beim einfügen und speichern des Moduls!
error_log hat geschrieben: [02-Sep-2004 08:40:33] PHP Warning: Cannot modify header information - headers already sent by (output started at /homepages/16/d85881142/htdocs/galerie82/camino/front_content.php(546) : eval()'d code:9) in /homepages/16/d85881142/htdocs/galerie82/pear/HTML/QuickForm/Action/Jump.php on line 53
Hat übrigens vielleicht schon mal jemand den QFC in Contenido zum laufen bekommen?

Vielen Dank für eure Hilfe,

Marco
Auch der längste Weg beginnt immer
mit einem kleinem Schritt!
Bild

timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo » Do 2. Sep 2004, 08:58

Das mit den Headern wird nicht funktionieren, da vor deinem Modul schon eine Ausgabe passiert!

kummer
Beiträge: 2423
Registriert: Do 6. Mai 2004, 09:17
Wohnort: Bern, Schweiz
Kontaktdaten:

Beitrag von kummer » Do 2. Sep 2004, 09:06

man müsste halt in der front_content.php eine ausgabenpufferung einfügen (ob_start()). dann können auch von modulen aus headers gesendet werden.
aitsu.org :: schnell - flexibel - komfortabel :: Version 2.2.0 (since June 22, 2011) (jetzt mit dual license GPL/kommerziell)

Caddata
Beiträge: 19
Registriert: Fr 28. Nov 2003, 13:42
Wohnort: Bremerhaven
Kontaktdaten:

Beitrag von Caddata » Do 2. Sep 2004, 10:34

Also, das mit Pufferung habe ich einbaut und es funktioniert wie gewünscht.

Allerdings zeigt mir Contenido immer noch ein Rotes Licht im Modul-Output, obwohl der Code für sich alleine fehlerfrei läuft.

Wie kann das sein?

Thx,
Marco
Auch der längste Weg beginnt immer
mit einem kleinem Schritt!
Bild

kummer
Beiträge: 2423
Registriert: Do 6. Mai 2004, 09:17
Wohnort: Bern, Schweiz
Kontaktdaten:

Beitrag von kummer » Do 2. Sep 2004, 10:40

ich habe ein ähnliches problem gehabt. bei mir hat es damit zusammen gehangen, dass ich assoziative arrays verwendet habe und den schlüssel mit einer variable übergeben habe:

Code: Alles auswählen

$myVariable[$myIndex]
und das hat contenido offenbar nicht gern. ich konnte das dann lösen, indem ich es wie folgt geschrieben habe:

Code: Alles auswählen

$myVariable["{$myIndex}"]
könnte eventuell ein solches problem vorliegen?
aitsu.org :: schnell - flexibel - komfortabel :: Version 2.2.0 (since June 22, 2011) (jetzt mit dual license GPL/kommerziell)

Caddata
Beiträge: 19
Registriert: Fr 28. Nov 2003, 13:42
Wohnort: Bremerhaven
Kontaktdaten:

Beitrag von Caddata » Do 2. Sep 2004, 10:55

Na, da soll mich doch....

DAS WARS!
Vielen dank für deine Hilfe, kummer!

Da muss man auch erstmal drauf kommen.... :wink:

Grüße,
Marco
Auch der längste Weg beginnt immer
mit einem kleinem Schritt!
Bild

kummer
Beiträge: 2423
Registriert: Do 6. Mai 2004, 09:17
Wohnort: Bern, Schweiz
Kontaktdaten:

Beitrag von kummer » Do 2. Sep 2004, 11:05

ich hatte da mal wohl 'ne eingebung... :wink:
aitsu.org :: schnell - flexibel - komfortabel :: Version 2.2.0 (since June 22, 2011) (jetzt mit dual license GPL/kommerziell)

Caddata
Beiträge: 19
Registriert: Fr 28. Nov 2003, 13:42
Wohnort: Bremerhaven
Kontaktdaten:

Beitrag von Caddata » Do 2. Sep 2004, 11:16

und wenn man die URL für den QuickForm_Controller nicht mit $auth->url() generieren lässt, sondern fest ins script schreibt, funzt dieser auch!

Na supi - jetzt läuft das Modul!
Auch der längste Weg beginnt immer
mit einem kleinem Schritt!
Bild

timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo » Do 2. Sep 2004, 12:28

Contenido hat da gar nichts dagegen - wenn der PHP Parser einen Fehler feststellt, zeigt Contenido eine rote Lampe an.

Caddata
Beiträge: 19
Registriert: Fr 28. Nov 2003, 13:42
Wohnort: Bremerhaven
Kontaktdaten:

Beitrag von Caddata » Do 2. Sep 2004, 12:39

Aber die Notation $array[$name] ist doch aus PHP-Parser-Sicht grundsätzlich nicht falsch, oder?
Als Stand-Alone stört der sich ja auch nicht dran, nur wenn man den Code durch eval() jagt, beschwert er sich!

Egal - jetzt läufts und dieser Thread ist als Insider-Wissen im Kopf gespeichert... :lol:

Greets & THX,

Marco
Auch der längste Weg beginnt immer
mit einem kleinem Schritt!
Bild

kummer
Beiträge: 2423
Registriert: Do 6. Mai 2004, 09:17
Wohnort: Bern, Schweiz
Kontaktdaten:

Beitrag von kummer » Do 2. Sep 2004, 13:14

das ist schon richtig so: die einfache notation ist die richtige. die andere (diejenige, die funktioniert) ist lediglich ein work around. ich habe keine ahnung, warum das nicht gehen sollte. und ich denke im übrigen, dass es nicht an der eval()-funktion liegt. die habe ich nämlich bislang immer ohne probleme verwenden können. ich schätze, allerdings weiss ich das nicht genau, dass contenido irgendwie eine gültigkeitsprüfung vornimmt und dass diese die probleme verursacht.
aitsu.org :: schnell - flexibel - komfortabel :: Version 2.2.0 (since June 22, 2011) (jetzt mit dual license GPL/kommerziell)

timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo » Do 2. Sep 2004, 13:20

nein, Contenido macht da überhaupt keine Prüfung, sondern gibt den kompletten Modulstring an ein eval weiter.

Gesperrt