codeiginter php sqlserver
03/03/2015
0
Cara... fazer a conexão do php com o sqlserver, está sendo um bicho de 300 cabeças... antes de usar o framework fazia a conexão com ODBC
try { $this->bd = new PDO("odbc:Driver={SQL Server};Server=MeuSerivdor; Database=MinhaDataBase; Uid=usuario;Pwd=senha"); } catch (PDOException $e) { print "Error!: " . $e->getMessage() . "<br/>"; die(); }
Bom isso funcionou perfeitamente, até que desisti do modelo procedural e quis entrar no ramo do framework e meu primeiro teste logico vou no mysql.. tudo perfeito (até vi que tinha os drivers com as conexões para outros bancos) mas quando fui fazer a conexão com o SQL SERVER ai fudeu!
Claudio Lopes
Posts
03/03/2015
William
<?php define ("DB_USER","usuario"); define ("DB_PASS","senha"); define ("DSN","sqlsrv:server=IP_SERVIDOR;database=NOME_BANCO"); class Conexao { private static $pdo; public static function getInstance() { if(!self::$pdo) { try{ self::$pdo = new PDO(DSN,DB_USER, DB_PASS); self::$pdo->setAttribute(PDO::ATTR_PERSISTENT, true); self::$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (PDOException $ex) { die("Erro na conexão: ".$ex->getMessage()."<br/>"); } } return self::$pdo; } } // Exemplo de uso $pdo = Conexao::getInstance();
03/03/2015
Claudio Lopes
ativei as extenções no php.ini
extension=php_pdo_sqlsrv_54_ts.dll
extension=php_sqlsrv_54_ts.dll
extension=php_pdo_sqlsrv_52_ts_vc6.dll
extension=php_pdo_sqlsrv_53_ts_vc6.dll
extension=php_pdo_sqlsrv_53_ts_vc9.dll
e as dll estão dentro do ext do php
mas não está habilidado o pdo e nada do sqlsrv no phpinfo
03/03/2015
Claudio Lopes
03/03/2015
Claudio Lopes
Fatal error: Call to a member function query() on null in C:\xampp\htdocs\tabular\application\models\banco.php on line 19
segue o que está no controller
class Welcome extends CI_Controller {
public function index()
{
//$this->load->view('welcome_message');
$this->load->database();
$this->load->model('banco','dados');
print_r($this->dados->teste());
}
}
no model
class banco extends CI_Model { function teste(){ return $this->db->query("select * from [TABULAR].[dbo].[TAGENDA]"); } }
lembrando que estou testando a conectividade...
05/03/2015
Claudio Lopes
09/03/2015
Claudio Lopes
Clique aqui para fazer login e interagir na Comunidade :)