Jump to content
xt:Commerce Community Forum

Lösung: Kontaktformular und Bemerkung leer


Nordin

Recommended Posts

Hallo Leute,

viele von euch haben das Problem, dass Nachrichten über das Kontaktformular leer ankommen. Beim wem dies auftritt, der bekommt auch keine Bemerkungen in einer Bestellung geliefert. Denn dieses Feld wird ebenfalls geleert. Mit dem Unterschied, dass man dort noch nicht einmal mitbekommt, dass eine Bemerkung geschrieben wurde!

Es gibt viel Text hier im Forum aber keine Komplettlösung für beide Probleme.

Darum will ich euch hier meine Lösung vorstellen.

Angeblich soll es reichen wenn man magic_quotes_gpc in der php.ini auf on stellt... siehe:

http://www.xt-commerce.com/forum/fragen-zur-software/79653-leere-mail-durch-kontaktformular-8.html#post387107

...aber wer diese Möglichkeit nicht hat, kann folgendes probieren:

öffne die Datei

/xtFramework/security_handler.php[/CODE]

suche (bei mir Zeile 58):

[PHP] if ($post_filter) $_POST = $filter->_filterXSS($_POST);[/PHP]

ersetzten durch:

[PHP] if ($post_filter) {

$array = array(
'customer_message', // Nachrichten-Feld uas Kontaktformular
'comments' // Bemerkungen-Feld aus Bestellprozess
);

// Felder säubern
$tmp_ary = array();
foreach($array as $value) {
if ($_POST[$value]) {
$tmp_ary[$value] = $_POST[$value];
$tmp_ary[$value] = htmlspecialchars(strip_tags($tmp_ary[$value],ENT_QUOTES));
// im Bestellprozess lästige \r\n entfern und durch <br \> ersetzen
if ($value == 'comments') {
$tmp_ary[$value] = preg_replace("#(\r|\n)#i", "", nl2br($tmp_ary[$value]));
}
}
}

// Original Filterbefehl von xt:Commerce
$_POST = $filter->_filterXSS($_POST);

// gesäuberte Felder wieder an POST übergeben
foreach($tmp_ary as $key => $value) {
$_POST[$key] = $value;
}
}[/PHP]

Mit dieser Schnipsel sollten die Mails wieder ankommen und auch die Felder vor XSS geschützt sein.

Auch die Bemerkung im Bestellprozess wird nun geliefert. Auch werden die lästigen [b]\r\n[/b] entfernt und durch vernünftige Umbrüche (<br />) ersetzt.

Ich hoffe ich kann damit einigen helfen.

Viel Spaß!

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...