当我将记录插入数据库时,我得到反斜杠,我想知道在哪里放置stripslashes函数来处理它们。
这是绑定他们的东西。
$st->bindValue( ":content", $this->content, PDO::PARAM_STR );
这是另一个存储所有参数并解析并存储日期的函数,因此我认为它可以对字符串执行相同的操作。
public function storeFormValues ( $params ) {
// Store all the parameters
$this->__construct( $params );
// Parse and store the publication date
if ( isset($params['publicationDate']) ) {
$publicationDate = explode ( '-', $params['publicationDate'] );
if ( count($publicationDate) == 3 ) {
list ( $y, $m, $d ) = $publicationDate;
$this->publicationDate = mktime ( 0, 0, 0, $m, $d, $y );
}
}
if(get_magic_quotes_gpc()) {
$content = stripslashes($content);
}
}
我无法在php.ini中关闭魔术引号,因为我正在使用雅虎网络托管(不是我的选择)
答案 0 :(得分:3)
你可以在不编辑php.ini的情况下关闭魔术报价gpc。您可以使用以下代码将其关闭。
<?php
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);
}
?>