J'utilise Zend Frameworks 1.12.3. Je dois créer une requête qui a obtenu oùS imbriqués, commeZend Framework 1.12 Db Select - imbriqués WHEREs utilisant plusieurs valeurs pour les points d'interrogation en condition
SELECT * FROM table1
WHERE (id = 'foo' AND name = 'bar') OR (grade = 123)
Voici ma tentative
$this->getDbTable()->select()
->from($this->getDbTable(), array('*')
->where('id = ? AND name = ?', $foo, $bar)
->orWhere('grade = ?', $grade);
Cependant, le résultat est
SELECT * FROM table1
WHERE (id = 'foo' AND name = 'foo') OR (grade = 123)
au lieu de name = 'bar'
Fondamentalement , Je ne peux pas utiliser plusieurs ?
s affectant chaque ?
une valeur différente. Connaissez-vous une solution?
Merci
LE: en utilisant une condition WHERE telle que ->where("id = $foo and name = $bar")
fonctionne, mais il ne l'empêche pas d'attaques d'injection comme le ?
ne
C'était seulement un exemple, j'ai plusieurs oùS imbriqué. Je vais essayer cependant. – Daniel