11
Tengo problemas para ejecutar una consulta Doctrine DQL. Este es el error que me da.Doctrine 2 PlainValue expected
Doctrine\Common\Annotations\AnnotationException: [Syntax Error] Expected PlainValue,
got 'integer' at position 13 in property Base\Session::$lifetime.
Mi código es el siguiente:
$query = $em->createQuery("SELECT s FROM Base\Session s WHERE s.session = \"$id\"");
Donde $ id es el session_id actual. Mi modelo se parece a:
namespace Base;
/** @Entity @Table(name="session") */
class Session extends Skeleton {
/**
* @Id @Column(type="integer")
* @GeneratedValue(strategy="AUTO")
*/
protected $id;
/** @Column(length=32) */
protected $session;
/** @Column(type=integer) */
protected $lifetime;
/** @Column(type=integer) */
protected $modified;
/** @Column(type="text") */
protected $data;
}
Gracias. El primer error fue la solución. Ya sabía tu segundo punto. Intenté tantas cosas que terminé con esta línea de código en la que olvidé usar la declaración preparada. ¡Muchas gracias! –
Como un comentario adicional al # 1, las comillas simples tampoco funcionan, deben ser comillas dobles – Shawn