in Formularfeldern werden Anführungszeichen escaped! ( ' -> \' , " -> \" )
dies liegt an der Einstellung in der php.ini
magic_quotes_qpc = on
für speicherung in einer Datenbank ist das notwendig, typo3 macht das aber nochmal zusätzlich (bei Nutzung der Funktion
$updatearray = array('fieldkey1' => 'fieldvalue1', 'fieldkey2' => 'fieldvalue2', ... );
$GLOBALS['TYPO3']->exec_UPDATEquery($table,$where,$updatearray);
Abhilfe schafft die Funktion:
function unescape($a) {
$retval=array();
if (is_array($a)) {
foreach ($a as $k=>$v) {
if (is_array($v)) {
$v=$this->unescape($v);
} elseif (is_string($v)) {
while (!(strpos($v,"\\'")===false)) {
$v=str_replace("\\'","'",$v);
}
while (!(strpos($v,"\\\"")===false)) {
$v=str_replace("\\\"","\"",$v);
}
}
$retval[$k]=$v;
}
} else {
$retval=$a;
}
return $retval;
}