Gis*_*eri 2 php mysql string zend-framework zend-db
我正在使用 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'
)
Run Code Online (Sandbox Code Playgroud)
插入的字符串周围有引号,数字插入为 0(零)。当我删除 $zenddb->quote() 时,它工作正常。但是,我该如何正确地逃避它们。
在这种情况下,您不必使用引用函数。因为您正在使用 Zend_Db_Table 适配器($db->insert 和 $db->update),所以您的数组中的数据已经被转义了。这很可能是在插入或更新数据之前添加了一组额外的引号。希望这可以帮助。