Je reçois une erreur:
Message:SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '%'Chinese'%) ORDER BY
text_id DESC LIMIT 10' at line 2
clause Where avec Zend_Db ne fonctionne pas comme prévu
causé par cette ligne de code
$select = $this->_db->select('')
->from(array('t'=>'as_text'))
->where('`s`.`name` LIKE %?%',$search) //this is causing error
->limit((int)$limit)
->order('text_id DESC')
->join(array('s'=>'as_source'),'t.source_id = s.source_id',array('s.name as source'));
Mon objectif est cette sql:
SELECT `t` . * , `s`.`name` AS `source`
FROM `as_text` AS `t`
INNER JOIN `as_source` AS `s` ON t.source_id = s.source_id
WHERE `s`.`name` LIKE '%Chinese%'
ORDER BY `text_id` DESC
LIMIT 10
Je pense qu'il est le -> où peu, parce que w quand je l'enlève je reçois 10 rangs.
non je ne l'ai pas fait, mais après l'avoir toujours une erreur 'SQLSTATE [42000]: Erreur de syntaxe ou violation d'accès: 1064 Vous avez une erreur dans votre syntaxe SQL; vérifier le manuel qui correspond à votre version du serveur MySQL pour la bonne syntaxe à utiliser près de '%' Chinese '%) ORDER BY 'text_id' DESC LIMIT 10' à la ligne 2' – Moak
Je l'ai essayé, et il génère une requête de manière fonctionnelle . Le problème était que la clause WHERE devait ressembler à ceci: WHERE s.name LIKE '% blah%' – user387302