Bonjour,
Merci pour ces pistes, je viens de résoudre ma connexion avec sqlsrv...
Télécharger le drivers PHP pour SQL Serveur a l’adresse:
http://www.microsoft.com/en-us/download ... x?id=20098 (choisissez celui adapte a votre système)
Décompresser, copier et coller les librairies (fichiers dont l'extension est .dll) dans le répertoire bin/ext de PHP
Si vous utilisez Wamp, le répertoire est de cette forme : C:\wamp\bin\php\php5.X.X\ext, avec X correspondant à la version de PHP que vous utilisez.
Les systèmes d'exploitation (OS) supportés par la version 3.0 du driver sont les suivantes :
Windows Server 2008 R2 SP1
Windows Vista SP2
Windows Server 2008 SP2
Windows 7 SP1
Windows 8
Windows 8.1
Les systèmes d'exploitation (OS) supportés par la version 2.0 du driver sont les suivantes :
Windows Server 2003 Service Pack 1
Windows XP Service Pack 3
Windows Vista Service Pack 1 ou supérieur
Windows Server 2008
Windows Server 2008 R2
Windows 7
Lorsque vous aurez copié ces DLL, ouvrez les deux fichiers php.ini (ils ne sont pas situés aux mêmes endroits : l'un se trouve dans C:\Program Files\wamp\bin\apache\Apache2.4.4\bin et correspond à votre fichier ini si vous utilisez PHP en ligne de commandes, on appelle cela le mode CGI, l'autre fichier php.ini se trouve dans le répertoire C:\Program Files\wamp\bin\php\php5.4.16).
Repérez les lignes qui commencent par extension= et rajoutez après toutes les extensions la ligne suivante :
extension=php_pdo_sqlsrv_55_ts.dll
Attention ! si vous utilisez PHP 5.4, remplacez le 55 par 54, ce qui pourra donner :
extension=php_pdo_sqlsrv_54_ts.dll
la mention ts signifie thread safe. En fonction de votre version d'Apache, vous aurez peut-être besoin d'utiliser la version non thread safe de la librairie sql server, dans ce cas, la chaîne à utiliser est la suivante :
extension=php_pdo_sqlsrv_55.dll
... et avec PHP 5.4:
extension=php_pdo_sqlsrv_54.dll
Relancez Apache. Avec WAMP, cliquez sur l'icône W située à gauche de l'heure système; puis cliquez sur Redémarrer les services. Normalement, le W doit redevenir vert.
Et dans la liste des extensions chargées au démarrage, vous verrez pdo_sqlsrv et sqlsrv qui sont rajoutes...
Et hop ca marche...
Ci-joint ma classe connexion qui marche bien:
<?php
class connexion{
public $conn;
function __construct(){
try {
$mode = "PROD";
if($mode == "DEV"){
$dsn = 'sqlsrv:Server=xxx.xxx.x.xx;Database=DEV_LOCAL_totostock';
$user = 'inventaireTechnicien';
$password = 'qwerty';
}else{
$dsn = 'sqlsrv:Server=xxx.xxx.x.xx;Database=tataStock';
$user = 'Inventaire';
$password = 'coucou';
}
$this->conn = new PDO($dsn, $user, $password, null);
}catch (PDOException $e){
echo 'Connexion échouée : ' . $e->getMessage();
}
}
function query($query){
return $this->conn->query($query);
}
function lastInsertId(){
//return $this->conn->lastInsertId();
$prep = $this->prepare("SELECT SCOPE_IDENTITY() as ID");
$prep->execute();
$res = $prep->fetch();
return $res['ID'];
}
function prepare($req){
return $this->conn->prepare($req);
}
function errorInfo(){
var_dump($this->conn->errorInfo());
}
}
?>
Merci a tous et vive PHP.