11
Non riesco a eseguire una Query DQL di Doctrine. Questo è l'errore che mi dà.Doctrine 2 PlainValue expected
Doctrine\Common\Annotations\AnnotationException: [Syntax Error] Expected PlainValue,
got 'integer' at position 13 in property Base\Session::$lifetime.
Il mio codice è simile al seguente:
$query = $em->createQuery("SELECT s FROM Base\Session s WHERE s.session = \"$id\"");
Dove $ id è il session_id corrente. Il mio modello si presenta come:
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;
}
Grazie. Il primo errore è stata la soluzione. Conoscevo già il tuo secondo punto. Ho appena provato così tante cose che ho finito con questa riga di codice in cui ho dimenticato di usare la dichiarazione preparata. Molte grazie! –
Come commento aggiuntivo al numero 1, le virgolette singole non funzionano, devono essere doppie virgolette – Shawn