tinymceでhtmlを挿入しようとしています。
例えば:
<img title="q" src="../kcfinder/upload/image/3b5330574c883fe1040eaddeb596ea20.jpg" alt="q" width="640" height="480" />
PDOはこれを行います
<img title=\"q\" src=\"../../../kcfinder/upload/image/3b5330574c883fe1040eaddeb596ea20.jpg\" alt=\"q\" width=\"640\" height=\"480\" />
これはinsertActionです:
$data = array_slice($data1, 0, -1);
foreach ($data as $column => $value) {
$ins[] = ':' . $column;
}
$ins = implode(',', $ins);
$fields = implode(',', array_keys($data));
$sql = "insert into $this->tableName ($fields) values ($ins)";
$sth = $this->connection->getConnection()->prepare($sql);
foreach ($data as $f => $v) {
$sth->bindValue(':' . $f, $v);
}
return $sth->execute();
str_replace を試しましたが、うまくいきません。誰かが \ を削除する方法を考えていますか ?
解決:
if (get_magic_quotes_gpc()) {
$process = array(&$_GET, &$_POST, &$_COOKIE, &$_REQUEST);
while (list($key, $val) = each($process)) {
foreach ($val as $k => $v) {
unset($process[$key][$k]);
if (is_array($v)) {
$process[$key][stripslashes($k)] = $v;
$process[] = &$process[$key][stripslashes($k)];
} else {
$process[$key][stripslashes($k)] = stripslashes($v);
}
}
}
unset($process);
}