Hallo,
ich habe ein Problem mit dem Guestbook V2 und Redaxo 4.2. Ich kann die Einträge im Backend nicht bearbeiten, beantworten oder online/offline stellen. Nach anklicken eines Eintrags wird die Strukturansicht angezeigt. Ich habe schon die Tabelle gelöscht und neu anlegen lassen (Neuinstallation des AddOns). Ich habe auch das Recht guestbook_63 vergeben.
Kann mir jemand einen Rat geben?
Vielen Dank
Frank
Hallo,
Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
-
- Beiträge: 15
- Registriert: 30. Jan 2008, 16:43
- Wohnort: Salzburg
Dasselbe problem bei mir auch. Woran kann das liegen!? Ich tippe auf das Addon Framework, da die Liste mit diesem aufgebaut wird und er ein <form rundherum bastelt mit action="index.php" anstatt dass es auf action="index.php?page=guestbook" geht. Wie man dies setzen kann weiß ich nicht.
Bitte um Hilfe. DANKE
Bitte um Hilfe. DANKE
-
- Beiträge: 15
- Registriert: 30. Jan 2008, 16:43
- Wohnort: Salzburg
Teilweise liegt das Problem am guestbook selbst, teilweise am Addon Framework RC6.
EDIT
Eine neue Version des guestbook ist online.
Diese funktioniert ausschließlich ab Redaxo 4.2!
Das Addon Framework RC6 funktioniert nicht mehr fehlerfrei mit REX 4.2. Deshalb müssen hier ebenfalls einige Anpassungen vorgenommen werden.
Dies betrifft die Datei: addon_framework/classes/form/class.rex_fieldController.inc.php
- in Zeile 259 müssen Anfuehrungszeichen ergaenzt werden:
$qry .= ' `'.$fields[$i]->getRawName().'`= "'.$this->_prepareValue($field_value).'"';
Datei: addon_framework/functions/function_rex_common.inc.php
- Zeile 258: function rex_a22_getDefaultGlobalParams() Werte müssen per rex_request uebernommen werden
Die Funktion sollte dann so aussehen:
Nach ersten Tests scheinen die grundlegenden Funktionen wieder richtig zu arbeiten.
EDIT
Eine neue Version des guestbook ist online.
Diese funktioniert ausschließlich ab Redaxo 4.2!
Das Addon Framework RC6 funktioniert nicht mehr fehlerfrei mit REX 4.2. Deshalb müssen hier ebenfalls einige Anpassungen vorgenommen werden.
Dies betrifft die Datei: addon_framework/classes/form/class.rex_fieldController.inc.php
- in Zeile 259 müssen Anfuehrungszeichen ergaenzt werden:
$qry .= ' `'.$fields[$i]->getRawName().'`= "'.$this->_prepareValue($field_value).'"';
Datei: addon_framework/functions/function_rex_common.inc.php
- Zeile 258: function rex_a22_getDefaultGlobalParams() Werte müssen per rex_request uebernommen werden
Die Funktion sollte dann so aussehen:
Code: Alles auswählen
function rex_a22_getDefaultGlobalParams()
{
global $REX, $page, $subpage, $func, $next;
$params = array ();
if (!$REX['REDAXO'])
{
//global $article_id, $clang;
$article_id =& $REX['ARTICLE_ID']; // Anpassung an REX 4.2
$clang =& $REX['CUR_CLANG']; // Anpassung an REX 4.2
$params['article_id'] = $article_id;
$params['clang'] = $clang;
}
$page = rex_request('page', 'string'); // Anpassung an REX 4.2
$subpage = rex_request('subpage', 'string'); // Anpassung an REX 4.2
$next = rex_request('next', 'string'); // Anpassung an REX 4.2
$params['page'] = $page;
$params['subpage'] = $subpage;
$params['next'] = $next;
return $params;
}
<?php print $Footer; ?>
Sven
Ich würde ja die Welt verändern,
doch der Quellcode ist mir zu absurd!
REX 5 :: Tricks und Tipps
REX 5 :: Modulesammlung
Wiki zu Redaxo 3 und 4 (!nur noch im Webarchiv!)
Sven
Ich würde ja die Welt verändern,
doch der Quellcode ist mir zu absurd!
REX 5 :: Tricks und Tipps
REX 5 :: Modulesammlung
Wiki zu Redaxo 3 und 4 (!nur noch im Webarchiv!)
-
- Beiträge: 15
- Registriert: 30. Jan 2008, 16:43
- Wohnort: Salzburg
- Markus.Staab
- Entwickler
- Beiträge: 9634
- Registriert: 29. Jan 2005, 15:50
- Wohnort: Aschaffenburg/Germany
- Kontaktdaten: ICQ Website
Hi zusammen,
wäre gut zu wissen, ob das Framework durch die oben genannten Änderungen von Sven jetzt auch mit anderen Addons in 4.2 funktioniert, was vorher nicht der Fall war.
Wenn das jemand prüfen und Rückmeldung geben könnte, würde ich die Änderungen ins SVN pflegen und ein 4.2 Release des AddonFW zum download bereitstellen.
Danke Sven!
Grüße,
Markus
wäre gut zu wissen, ob das Framework durch die oben genannten Änderungen von Sven jetzt auch mit anderen Addons in 4.2 funktioniert, was vorher nicht der Fall war.
Wenn das jemand prüfen und Rückmeldung geben könnte, würde ich die Änderungen ins SVN pflegen und ein 4.2 Release des AddonFW zum download bereitstellen.
Danke Sven!
Grüße,
Markus
-
- Beiträge: 488
- Registriert: 29. Jan 2007, 18:32
- Wohnort: Sachsen
-
- Beiträge: 9
- Registriert: 15. Okt 2007, 22:37
Hi,
ich habe die Änderungen auch in das AF eingebaut. Leider nicht erfolgreich.
Info: Unser REXImmo ist aufgebaut wie das Gästebuch Addon.
Man kann den neuen Datensatz nicht editieren.
Aufruf erfolgte bis dato über die URL:
http://localhost/redaxo4_2_1/redaxo/ind ... entry_id=1
Testen kann man das auch im Addon Framework selbst:
Addon Framework -> Einfache Liste -> beliebigen Link anklicken -> Es passiert nichts.
Außerdem wird versucht beim Speichern in die DB (neu anlegen) z.B. ein Integer Wert fehlerhaft in die DB zu schreiben '21'.
Jemand eine Idee?
ich habe die Änderungen auch in das AF eingebaut. Leider nicht erfolgreich.
Info: Unser REXImmo ist aufgebaut wie das Gästebuch Addon.
Man kann den neuen Datensatz nicht editieren.
Aufruf erfolgte bis dato über die URL:
http://localhost/redaxo4_2_1/redaxo/ind ... entry_id=1
Testen kann man das auch im Addon Framework selbst:
Addon Framework -> Einfache Liste -> beliebigen Link anklicken -> Es passiert nichts.
Außerdem wird versucht beim Speichern in die DB (neu anlegen) z.B. ein Integer Wert fehlerhaft in die DB zu schreiben '21'.
Jemand eine Idee?
Je nach Addon muss man die Function erweitern. Wir benötigen noch die folgenden:
Im eigenen Addon muss man dann auf diese requests zugreifen. am besten in der index.inc.php.
Das muss auch im Addon Framework angepasst werden.
Viele Grüße
Ronny
Code: Alles auswählen
$func = rex_request('func', 'string'); // rkemmere: Anpassung an REX 4.2
$entry_id = rex_request('entry_id', 'string'); // rkemmere: Anpassung an REX 4.2
$params['func'] = $func;
$params['entry_id'] = $entry_id;
Code: Alles auswählen
$func = rex_request('func', 'string');
$subpage = rex_request('subpage', 'string');
Code: Alles auswählen
$func = rex_request('func', 'string'); // Anpassung an REX 4.2
$subpage = rex_request('subpage', 'string'); // Anpassung an REX 4.2
Viele Grüße
Ronny
An welcher Stelle/Datei?rkemmere hat geschrieben:Das muss auch im Addon Framework angepasst werden.
<?php print $Footer; ?>
Sven
Ich würde ja die Welt verändern,
doch der Quellcode ist mir zu absurd!
REX 5 :: Tricks und Tipps
REX 5 :: Modulesammlung
Wiki zu Redaxo 3 und 4 (!nur noch im Webarchiv!)
Sven
Ich würde ja die Welt verändern,
doch der Quellcode ist mir zu absurd!
REX 5 :: Tricks und Tipps
REX 5 :: Modulesammlung
Wiki zu Redaxo 3 und 4 (!nur noch im Webarchiv!)
Hi,
das muss in unter addon_framework/pages in der index.inc.php nach den require gesetzt werden.
Danach kann man im Addon Framework unter Addons überprüfen ob man z.B. in der "Einfache Liste" einen Link klicken kann und man nicht in der Übersicht bleibt.
das muss in unter addon_framework/pages in der index.inc.php nach den require gesetzt werden.
Code: Alles auswählen
$Basedir = dirname(__FILE__);
// Classes
require_once $Basedir.'/../classes/form/class.rex_form.inc.php';
require_once $Basedir.'/../classes/list/class.rex_list.inc.php';
// *************************************** MAIN
require $REX['INCLUDE_PATH']."/layout/top.php";
// Request Paramater
$func = rex_request('func', 'string'); // Anpassung an REX 4.2
$subpage = rex_request('subpage', 'string'); // Anpassung an REX 4.2
-
- Beiträge: 3
- Registriert: 21. Aug 2009, 21:36
- Wohnort: Aachen
Keine Antwortenfunktion im Gästebuch
Erstmal schönen Dank an Koala für die oben veröffentliche Anpassung des Gästebuches an Redaxo 4.2. Es läuft auf meiner ersten Redaxo-Seite. Jedoch gibt es ein Problem, wenn ich auf einen Eintrag antworten möchte. Es erscheint die folgende Fehlermeldung:
"Fatal error: Cannot redeclare smarty_core_assemble_plugin_filepath() (previously declared in /meine website/htdocs/redaxo/include/addons/addon_framework/classes/form/validate/internals/core.assemble_plugin_filepath.php:15) in /meine website/htdocs/redaxo/include/addons/rexsmarty/classes/internals/core.assemble_plugin_filepath.php on line 15"
Kann mir jemand vielleicht einen Tipp geben, was da verkehrt läuft?
Vielen Dank im Voraus
"Fatal error: Cannot redeclare smarty_core_assemble_plugin_filepath() (previously declared in /meine website/htdocs/redaxo/include/addons/addon_framework/classes/form/validate/internals/core.assemble_plugin_filepath.php:15) in /meine website/htdocs/redaxo/include/addons/rexsmarty/classes/internals/core.assemble_plugin_filepath.php on line 15"
Kann mir jemand vielleicht einen Tipp geben, was da verkehrt läuft?
Vielen Dank im Voraus
Re: Keine Antwortenfunktion im Gästebuch
Wie die fehlermeldung schon sagt, beißen sich da die Installationen des Addonframework und die vn Rex-Smarty. Dazu gab es hier schon mal eine Lösung, wenn ich nicht irre.Triplefish hat geschrieben:"Fatal error: Cannot redeclare smarty_core_assemble_plugin_filepath() (previously declared in /meine website/htdocs/redaxo/include/addons/addon_framework/classes/form/validate/internals/core.assemble_plugin_filepath.php:15)"
Suche im Forum mal nach Smarty. Mehr kann ich dazu auch nicht sagen.
<?php print $Footer; ?>
Sven
Ich würde ja die Welt verändern,
doch der Quellcode ist mir zu absurd!
REX 5 :: Tricks und Tipps
REX 5 :: Modulesammlung
Wiki zu Redaxo 3 und 4 (!nur noch im Webarchiv!)
Sven
Ich würde ja die Welt verändern,
doch der Quellcode ist mir zu absurd!
REX 5 :: Tricks und Tipps
REX 5 :: Modulesammlung
Wiki zu Redaxo 3 und 4 (!nur noch im Webarchiv!)
-
- Beiträge: 3
- Registriert: 21. Aug 2009, 21:36
- Wohnort: Aachen
Vielleicht (hoffentlich) ist anderen Benutzern dieser massive Bug auch schon aufgefallen:
Bei Eingabe von Beitraegen wird HTML-Code geparsed und nicht interpretiert. Gut so. Aber wenn ein Beitrag per Backend kommentiert wird, wird auch der bereits enthaltende Kommentar neu geschrieben. Dieses mal ungefiltert!!!! Alle Kommandos (inkl. Javascript) werden ausgegeben. Wer als Admin nicht genau hinschaut schaltet sich die Hackerattacken somit selber frei!!!
Mache mich jetzt auf die Suche, aber für den Fall dass mir jemand auf die Sprünge helfen kann wo und wie ich das verhindern kann...
Denke übrigens, dass hier sind wohl noch ein paar Sicherheitslücken mehr drinne stecken (nur beim überfliegen). Gibt es noch Workarounds, die ich übersehen habe im Forum?
Bei Eingabe von Beitraegen wird HTML-Code geparsed und nicht interpretiert. Gut so. Aber wenn ein Beitrag per Backend kommentiert wird, wird auch der bereits enthaltende Kommentar neu geschrieben. Dieses mal ungefiltert!!!! Alle Kommandos (inkl. Javascript) werden ausgegeben. Wer als Admin nicht genau hinschaut schaltet sich die Hackerattacken somit selber frei!!!
Mache mich jetzt auf die Suche, aber für den Fall dass mir jemand auf die Sprünge helfen kann wo und wie ich das verhindern kann...
Denke übrigens, dass hier sind wohl noch ein paar Sicherheitslücken mehr drinne stecken (nur beim überfliegen). Gibt es noch Workarounds, die ich übersehen habe im Forum?
Okay.... auf die schnelle:
in modules/module.form.inc.php finden die Überprüfungen statt. Dabei werden die Eingaben per htmlentities entschärft. Aus irgendeinem Grund (vielleicht ist das hier bei mir auch aus irgendwelchen Gründen ein Sonderfall???) werden die Eingaben bei Editierung im Backend wieder zurück in HTML-Tags verwandelt.
Ist mir zu heikel. Ich habe mal in oben erwähntem Modul die Anweisung (ungf. bei Zeile 127)
$var = '"'.htmlspecialchars($var).'"';
durch das etwas rabiatere
$var = '"'.strip_tags($var).'"';
ersetzt. Hierbei werden alle HTML-Tags aus den Eingaben entfernt.
Ist auch nicht der Weisheit letzter Schluss, aber besser als vorher... denke ich;-)
in modules/module.form.inc.php finden die Überprüfungen statt. Dabei werden die Eingaben per htmlentities entschärft. Aus irgendeinem Grund (vielleicht ist das hier bei mir auch aus irgendwelchen Gründen ein Sonderfall???) werden die Eingaben bei Editierung im Backend wieder zurück in HTML-Tags verwandelt.
Ist mir zu heikel. Ich habe mal in oben erwähntem Modul die Anweisung (ungf. bei Zeile 127)
$var = '"'.htmlspecialchars($var).'"';
durch das etwas rabiatere
$var = '"'.strip_tags($var).'"';
ersetzt. Hierbei werden alle HTML-Tags aus den Eingaben entfernt.
Ist auch nicht der Weisheit letzter Schluss, aber besser als vorher... denke ich;-)
Danke für den Hinweis.Gort hat geschrieben:Aus irgendeinem Grund (vielleicht ist das hier bei mir auch aus irgendwelchen Gründen ein Sonderfall???) werden die Eingaben bei Editierung im Backend wieder zurück in HTML-Tags verwandelt.
Das liegt am Addon Framework. Ist mir bisher noch gar nicht aufgefallen.
Sowas blödes aber auch
Muss mal schaun, wo ich das ändern kann. Konkret liegt es an der Datei pages/entries.inc.php
<?php print $Footer; ?>
Sven
Ich würde ja die Welt verändern,
doch der Quellcode ist mir zu absurd!
REX 5 :: Tricks und Tipps
REX 5 :: Modulesammlung
Wiki zu Redaxo 3 und 4 (!nur noch im Webarchiv!)
Sven
Ich würde ja die Welt verändern,
doch der Quellcode ist mir zu absurd!
REX 5 :: Tricks und Tipps
REX 5 :: Modulesammlung
Wiki zu Redaxo 3 und 4 (!nur noch im Webarchiv!)
Yep... kann ich bestätigen, dass es am Framework liegt. Wollte zuerst auch dort ansetzen... aber erst mal die passende Stelle finden.
Deshalb ist die vorgeschlage "Zwischenlösung" wohl besser, da so erst gar kein Code in die Datenbank gelangt, der vom Framework dann ggf. wieder ausführbar gemacht wird.
Deshalb ist die vorgeschlage "Zwischenlösung" wohl besser, da so erst gar kein Code in die Datenbank gelangt, der vom Framework dann ggf. wieder ausführbar gemacht wird.
Erst mal danke für diesen wichtigen Sicherheits-Hint !
Ich hab gerade festgestellt, dass mit der strip_tags() - Lösung noch ein Loch existiert, nämlich die Benachrichtigungs E-mail.
Wenn jemand ein JS-Code eingibt bekommt Ihr den nach Hause geschickt, weil die E-mail versendet wird, bevor der code gestrippt ist.
Wenn der Provider die mails nicht stripped ist der Code im Mail-Programm ausführbar.
Daher folgender Vorschlag:
Im Guestbook-file module.form.inc.php ca. ab Zeile 224 die Zeilen ...
ebenfalls strippen. Also so ...
Dann ist schadhafter Code auch nicht in der E-mail drin.
Lg.
Ich hab gerade festgestellt, dass mit der strip_tags() - Lösung noch ein Loch existiert, nämlich die Benachrichtigungs E-mail.
Wenn jemand ein JS-Code eingibt bekommt Ihr den nach Hause geschickt, weil die E-mail versendet wird, bevor der code gestrippt ist.
Wenn der Provider die mails nicht stripped ist der Code im Mail-Programm ausführbar.
Daher folgender Vorschlag:
Im Guestbook-file module.form.inc.php ca. ab Zeile 224 die Zeilen ...
Code: Alles auswählen
$mail_author = htmlspecialchars(rex_post('name', 'string'));
$mail_message = htmlspecialchars(rex_post('text', 'string'));
$mail_url = htmlspecialchars(rex_post('url', 'string'));
$mail_email = htmlspecialchars(rex_post('email', 'string'));
$mail_city = htmlspecialchars(rex_post('city', 'string'));
Code: Alles auswählen
$mail_author = strip_tags(rex_post('name', 'string'));
$mail_message = strip_tags(rex_post('text', 'string'));
$mail_url = strip_tags(rex_post('url', 'string'));
$mail_email = strip_tags(rex_post('email', 'string'));
$mail_city = strip_tags(rex_post('city', 'string'));
Lg.
-
- Beiträge: 126
- Registriert: 20. Okt 2005, 20:52
- Wohnort: 23966 Tressow
- Kontaktdaten: Website
Re: Guestbook
Hallo,
auch wenn es schon ein paar Tage her ist, vielen Dank für die Fixes. Hier noch einer:
Addon-Framework, pages/index.inc.php, ebenfalls nach dem require (etwa Zeile 25):
Man kann dann wieder im Addon Framework auf Sourcecode anzeigen klicken und der Sourcecode wird angezeigt.
Bin grade auch am Gästebuch debuggen (Rex 4.3.1), Antwortfunktion geht nicht und neue Beiträge erscheinen nicht und so.
Dann noch guestbook/pages/index.inc.php etwa Zeile 18 noch hinzufügen:
Damit wird beim Aufruf eines Gästebucheintrages im Backend auch der entsprechende Eintrag aufgerufen, sonst war der value
<input id="hidden_entry_id" type="hidden" value="114" name="entry_id">
immer leer und es wurden zwei (?) neue Datensätze angelegt.
Achja, die Fehler sind nach dem Umzug auf einen neuen Server aufgetreten (beide PHP 5.3.3 und MySQL 5.1.46).
Gruß Wolfgang
auch wenn es schon ein paar Tage her ist, vielen Dank für die Fixes. Hier noch einer:
Addon-Framework, pages/index.inc.php, ebenfalls nach dem require (etwa Zeile 25):
Code: Alles auswählen
$view = rex_request('view', 'string'); // Anpassung an REX 4.2
Bin grade auch am Gästebuch debuggen (Rex 4.3.1), Antwortfunktion geht nicht und neue Beiträge erscheinen nicht und so.
Dann noch guestbook/pages/index.inc.php etwa Zeile 18 noch hinzufügen:
Code: Alles auswählen
$entry_id = rex_request('entry_id', 'string');
<input id="hidden_entry_id" type="hidden" value="114" name="entry_id">
immer leer und es wurden zwei (?) neue Datensätze angelegt.
Achja, die Fehler sind nach dem Umzug auf einen neuen Server aufgetreten (beide PHP 5.3.3 und MySQL 5.1.46).
Gruß Wolfgang
Guestbook mit 4.3.2
danke,
nachdem ich alle modifikationen aus diesem posting eingesetzt habe, funktioniert auch wieder mein backend des guestbooks in redaxo 4.3.2 – zumindest kann ich über bearbeiten den online-status wieder einstellen. das war vorher nicht möglich. was mir zu meinem glück noch fehlt: die selbe funktion beim klick auf online/offline in der eintragsliste. der link mit der funktion tut es nicht.
jemand eine idee?
nachdem ich alle modifikationen aus diesem posting eingesetzt habe, funktioniert auch wieder mein backend des guestbooks in redaxo 4.3.2 – zumindest kann ich über bearbeiten den online-status wieder einstellen. das war vorher nicht möglich. was mir zu meinem glück noch fehlt: die selbe funktion beim klick auf online/offline in der eintragsliste. der link mit der funktion
Code: Alles auswählen
http://domain.tld/redaxo/index.php?page=guestbook&func=status&mode=offline_it&entry_id=80
jemand eine idee?
-
- Beiträge: 1
- Registriert: 27. Aug 2013, 18:07
Re: Guestbook
Super Sache,
das hat doch mal funktioniert mit den beschriebenen Anpassungen und das sogar bei Redaxo 4.4
siehe
http://www.interaktiv.bayerischer-wald- ... inute.html
Danke an alle die Ihr Wissen hier weitergaben.
das hat doch mal funktioniert mit den beschriebenen Anpassungen und das sogar bei Redaxo 4.4
siehe
http://www.interaktiv.bayerischer-wald- ... inute.html
Danke an alle die Ihr Wissen hier weitergaben.