我正在使用Zend将数组插入到我的数据库中,并且我尝试使用$ zenddb-> quote($ string)函数来转义我的值,但是它在字符串中添加了引号,所以引号仍然是我插入后在数据库中。我使用不正确吗?
$data['tournament_id'] = $this->zdb->quote($_POST['winners_tournament_id']);
$data['user_id'] = $this->zdb->quote($_SESSION['user']);
$data['user_name'] = $this->zdb->quote($_SESSION['first_name']);
$insert = $this->zdb->insert("submitters", $data);
//print_r($data) looks like this:
Array
(
[tournament_id] => '55'
[user_id] => '2182609'
[user_name] => 'eric'
)
正在插入字符串并在其周围添加引号,并且数字将插入为0(零)。当我删除$ zenddb-> quote()时,它工作正常。但是,我该如何正确地逃避它们呢。
答案 0 :(得分:4)
在这种情况下,您不必使用quote函数。因为您正在使用Zend_Db_Table适配器($ db-> insert和$ db-> update),所以数组中的数据已经被转义。最有可能的是,在插入或更新数据之前添加一组额外的引号。希望这可以帮助。