connessione di esempio:
class PDO_Connection {
protected static $db = null;
protected static function getConnection() {
$registry = Zend_Registry::getInstance();
$C = $registry->config->dbauto;
try {
if (self::$db == null) {
self::$db = new PDO(
sprintf('mysql:host=%s;dbname=%', $C->host, $C->dbname ),
$C->username,
$C->password
);
self::$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
} catch (PDOException $e) {
echo "DB2 PDO error '".$e->getMessage()."'";
}
}
// permette di lanciare una query diretta sul db, ritorna array records
// SQL: WHERE calories < :calories AND colour = :colour
// $params = ['calories' => $calories ]
public static function query($sql, $params=[] ) {
$data = [];
self::getConnection();
if (self::$db) {
$stmt = self::$db->prepare($sql);
$res = $stmt->execute( $params );
if ($res) {
while ($oRow = $stmt->fetch(PDO::FETCH_ASSOC)) {
$data[] = $oRow;
}
}
$stmt->closeCursor();
} else {
die(__FUNCTION__.' errore connessione mysql');
}
return $data;
}
}