Seite 1 von 1
cTypeGenerator für CMS_IMGEDITOR?
Verfasst: Do 26. Sep 2013, 15:52
von CinKon
Hallöchen,
ich bin gerade dabei ein Modul zu bauen, bei dem ich mit einer for-Schleife Eingabemöglichkeiten generieren will:
Code: Alles auswählen
<?php
if( $edit ) {
$ocType = new cTypeGenerator();
$nr = 1;
for($x = $mod_cfg['anz_begin']; $x < ($mod_cfg['anz_begin']+$mod_cfg['anz_partner']); $x++) {
$outputList[] = array(
'num' => $nr,
'text' => stripslashes($ocType->getGeneratedCmsTag("CMS_HTML", $x)),
'image' => stripslashes($ocType->getGeneratedCmsTag("CMS_IMG", $x)),
'image_edit' => stripslashes($ocType->getGeneratedCmsTag('CMS_IMGEDITOR', $x)),
'link' => stripslashes($ocType->getGeneratedCmsTag('CMS_LINKEDITOR', $x)),
);
$nr++;
}
}
?>
Funktioniert soweit auch ganz gut, nur beim Speichern des Bildes erhalte ich eine Fehlermeldung:
Warning: Cannot modify header information - headers already sent by (output started at [###]contenido/includes/include.con_editcontent.php(135) : eval()'d code:10) in [###]contenido/classes/content_types/class.content.type.imgeditor.php on line 151
Speichern tut Contenido trotzdem, aber die Fehlermeldung stört natürlich

Gibt es vielleicht eine andere Klasse oder Möglichkeit, um das umzusetzen?
Schöne Grüße
Lars
Re: cTypeGenerator für CMS_IMGEDITOR?
Verfasst: Mi 2. Okt 2013, 09:37
von xmurrix
Hallo CinKon,
die Klasse cContentTypeImgeditor macht einen header-Redirect und das lässt sich nicht abschalten...
Du kannst aber mit der Ausgabepufferung arbeiten, also
Das sollte auch die Ausgabe der header in der Schleife unterbinden und am Ende kann man dann die Ausgabe leeren.
Gruß
xmurrix
Re: cTypeGenerator für CMS_IMGEDITOR?
Verfasst: Mi 2. Okt 2013, 11:39
von Spider IT
Hallo Murat,
laut de.php.net zur Funktion
ob_start() werden die Header nicht "unterdrückt":
de.php.net hat geschrieben:Diese Funktion aktiviert die Ausgabepufferung. Während die Ausgabepufferung aktiv ist werden Scriptausgaben (mit Ausnahme von Headerinformationen) nicht direkt an den Client weitergegeben sondern in einem internen Puffer gesammelt.
Gruß
René
Re: cTypeGenerator für CMS_IMGEDITOR?
Verfasst: Mi 2. Okt 2013, 11:59
von xmurrix
Hmm, dann kann man vielleicht in der Schleife den versendeten Header wieder entfernen.
Aber nicht den Letzten, den braucht man um wider in den Edit-Modus weiterzuleiten.
Oder man setzt immer in der Schleife den Header zurück um nach der Schleife seine eigene Weiterleitung auszuführen.
Code: Alles auswählen
$idart = cRegistry::getArticleId();
$idcat = cRegistry::getCategoryId();
$cfg = cRegistry::getConfig();
$client = cRegistry::getClientId();
$session = cRegistry::getSession();
$path = $cfg['path']['contenido_fullhtml'] . "external/backendedit/front_content.php?area=con_editcontent&idart={$idart}&idcat={$idcat}&changeview=edit&client={$client}";
header('location:' . $session->url($path));
Es wäre nicht schlecht, wenn die Weiterleitung in den cContentType-Klassen konfigurierbar oder manuell aufrufbar wäre...
Gruß
xmurrix
Re: cTypeGenerator für CMS_IMGEDITOR?
Verfasst: Fr 11. Okt 2013, 11:33
von frederic.schneider_4fb
Mein Kollege Dominik Ziegler und ich haben uns eben länger mit diesem Problem beschäftigt. Wir haben auch erste Ansätze, die jedoch etwas aufwändiger sind. Folglich: Wir werden das Thema intern noch einmal diskutieren und Euch informieren, wenn wir eine Lösung umgesetzt haben. Allerdings bitte ich dafür um etwas Geduld, es kann etwas dauern.
Re: cTypeGenerator für CMS_IMGEDITOR?
Verfasst: Mi 22. Jan 2014, 17:47
von Bernbacher
Hm, gibts da schon eine Lösung mittlerweile?
Ich will auch in einer Schleife Eingabemöglichkeiten für Images erzeugen. Funktioniert, aber eben mit dem Fehler:
Code: Alles auswählen
Warning: Cannot modify header information - headers already sent by (output started at /kunden/207810_80333/rp-hosting/1008/1008/html-data/contenido/includes/include.con_editcontent.php(137) : eval()'d code:6) in /kunden/207810_80333/rp-hosting/1008/1008/html-data/contenido/includes/include.con_editcontent.php(137) : eval()'d code on line 893
Aber weder mit
noch mit
Code: Alles auswählen
$path = $cfg['path']['contenido_fullhtml'] . "external/backendedit/front_content.php?area=con_editcontent&idart={$idart}&idcat={$idcat}&changeview=edit&client={$client}";
header('location:' . $session->url($path));
kann ich die Fehlermeldung unterdrücken.
Mir ist auch nicht ganz klar an welcher Stelle die zweite Möglichkeit eingebaut werden muss...
Re: cTypeGenerator für CMS_IMGEDITOR?
Verfasst: Do 23. Jan 2014, 21:48
von xmurrix
Hallo Bernbacher,
hier ein Beispiel, was funktioniert:
Code: Alles auswählen
for ($i = 0; $i < 10; $i++) {
ob_start();
header('X-My-Header: ' . $i);
header('Location: http://www.contenido.org');
header_remove();
ob_flush();
}
header('X-My-Header: le fin');
echo 'foo';
Du musst dafür sorgen, dass in der Schleife jeweils ob_start(), header_remove() und ob_flush() an richtigen Stellen positioniert werden.
Schau dir auch mal die Klasse cTypeGenerator an, eventuell geht das auch damit. Das Modul
mpDynamicContent generiert auch dynamisch Content-Typen und da ist so ein Problem mit Redirects nicht bekannt...
Gruß
xmurrix
Re: cTypeGenerator für CMS_IMGEDITOR?
Verfasst: Do 24. Apr 2014, 09:41
von Oldperl
Hi,
also ich häng hier gerade am selben Problem. Stellt sich mir die Frage warum der CMS_IMGEDITOR einen Header-Location nutzt und der CMS_LINKEDITOR nicht.
Gruß aus Franken
Ortwin
Re: cTypeGenerator für CMS_IMGEDITOR?
Verfasst: So 1. Feb 2015, 17:26
von Leo
Hallo Contenido-Gemeinde,
gibt es für diesen Fehler mittlerweile eine Lösung?
VG Leonhard