Jump to content
xt:Commerce Community Forum
Sign in to follow this  
Nordin

Lösung: Kontaktformular und Bemerkung leer

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ß!

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...