Я занимаюсь разработкой приложения, которое позволяет пользователям вводить данные в поля VARCHAR (255) в mySQL, поэтому безопасность является серьезной проблемой.
У меня проблемы с пониманием quote ().Если я использую кавычку ('test'), данные возвращаются как '\' test \ '' в SELECT, что нежелательно.Как мне удалить эти данные из кавычек?
Если я обойду quote (), я могу заглянуть в phpmyadmin и увидеть 'test', так что, похоже, Zend не экранирует кавычки для меня автоматически ...
Мой код выглядит примерно так:
public function getDbTable() {
if (null === $this->_dbTable) {
$this->setDbTable(new Zend_Db_Table($this->_tableName));
}
return $this->_dbTable;
}
private function insert($anObject) {
$row['cell1'] = $anObject->getCell1();
$row['cell2'] = $anObject->getCell2();
$this->getDbTable()->insert($row);
}
Должен ли я использовать quote () около $ anObject-> getCell1 () и т. Д. При вставке и обновлении?