Предотвратить инъекции Sql в ZF - PullRequest
2 голосов
/ 20 октября 2010

Я использую следующий код

$this->getDb()->fetchRow($sql, $params);

Это свободно от SQL инъекций?Пожалуйста, ведите меня.Как я могу сделать его свободным от инъекций sql.

1 Ответ

3 голосов
/ 20 октября 2010
  1. используется класс Zend_Db, для Escape

  2. используется валидатор Zend_Form для фильтр входные значения.

3.Используется Подготовлено Максимально возможное внутреннее выражение, например:

// Build this query:
//    SELECT product_id, product_name, price
//    FROM "products"
//   WHERE (price < 100.00 OR price > 500.00)
//  AND (product_name = 'Apple')
$minimumPrice = 100;
$maximumPrice = 500;
$prod = 'Apple';
$select = $db->select()
   ->from('products',
   array('product_id', 'product_name', 'price'))
   ->where("price < $minimumPrice OR price > $maximumPrice")
   ->where('product_name = ?', $prod);

подробнеепо этой ссылке:

http://static.zend.com/topics/Webinar-Zend-Secure-Application-Development-with-the-Zend-Framework.pdf

...