ciao a tutti
sto riscontrando un problema in uno script che usa le pdo per interrogare il db e la direttiva zend.ze1_compatibility_mode di php.ini.
infatti dato questo semplice codice
Codice PHP:
$res= $this->db->prepare("SELECT * FROM users WHERE user = :user AND pwd = :pwd AND is_blocked = :blocked;");
$res->bindParam(':user', $user, PDO::PARAM_STR, 32);
$res->bindParam(':pwd', md5($pwd), PDO::PARAM_STR, 32);
$res->bindParam(':blocked', $blocked, PDO::PARAM_INT, 1);
$res->execute();
$row = $res->fetch(PDO::FETCH_OBJ);
echo $row->user;
non ho nessun risultato utile, nel senso che l'utente non mi viene stampato. Ho provato con var_dump su $row->user e mi da NULL.
Provando invece con $this->db->query(ecc ecc ecc) tutto funziona a meraviglia.
Poi ho pensato alla direttiva per la compatibilità con php4; l'ho settata ad off e magicamente tutto è funzionato come mi aspettavo.
Ma non capisco il perchè e visto che sul quella macchina girano ancora applicazioni "vecchie" ho necessità di mantenere ad on la compatibilità.
Aveve mai riscontrato questo problema?