Laravel 6

could not find driver, laravel6, SQL server 2008 R2

Avatar de romeochakam
romeochakam

Bonjour ça fait déjà 1 semaine je galère à me conencter sur mon sql server avec le framework laravel. J'utilise wamserver 3.2.0 avec php 7.2.25, j'ai télécharger et installé les librairie php_sqlsrv.dll et pdo_ php_sqlsrv.dll dans php/7.2.25/ext/ puis j'ai activé dans le fichier php.ini ce qui m'affiche bien le message que pdo_sqlsrv est bien activé depuis phpinfo. après avoir relancer mon server wamserver, j'ai remplacer les parametres de connexion à mon SGBD par ceci:

DB_CONNECTION=sqlsrv
DB_HOST=LAPTOP-FGI8NU18
DB_PORT=1433
DB_DATABASE=oxygen
DB_USERNAME=sa
DB_PASSWORD=123456789

et dans mon fichier app/database.php par ceci:

 'sqlsrv' => [
            'driver' => 'sqlsrv',
            'url' => env('DATABASE_URL'),
            'host' => env('DB_HOST', 'LAPTOP-FGI8NU18'),
            'port' => env('DB_PORT', '1433'),
            'database' => env('DB_DATABASE', 'oxygen'),
            'username' => env('DB_USERNAME', 'sa'),
            'password' => env('DB_PASSWORD', '123456789'),
            'charset' => 'utf8',
            'prefix' => '',
            'prefix_indexes' => true,
        ]

lorsque je fais un php artisan migrate, j'ai cette erreur : could not find driver (SQL: select * from sysobjects where type = 'U' and name = migrations) PDOException::("could not find driver")

par contre lorsque je fais de la connexion manuelle par Php avec ce code: `<?php

$server_name = "LAPTOP-FGI8NU18"; $database_name = "laravel"; try { $conn = new PDO("sqlsrv:Server=$server_name;Database=$database_name;ConnectionPooling=0", "sa", "cx123-"); $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$sql = "SELECT * FROM [ApiAuth].[dbo].[Users]";

$stmt = $conn->query($sql);

echo ""; while ($row = $stmt->fetch(PDO::FETCH_ASSOC)){ print_r($row); } echo "";

} catch(PDOException $e) {

var_dump($e->getMessage());

}

?>` j'arrive bien à me connecter à ma base de données je ne comprends pas le pourquoi avec laravel on me parle d'une histoire de driver pourtant avec le php classic tous ce passe bien quelqu'un a déjà eu ce soucis?

cordialement

Avatar de nash
nash

salut

//from
    'default' => env('DB_CONNECTION', 'mysql'),
    //to
    'default' => env('DB_CONNECTION', 'sqlsrv'),

dans database.php

Avatar de romeochakam
romeochakam

Salut Nash merci pour votre réaction j'ai déjà fait cela sorry j'avais juste oublier de l'afficher et toujours rien le même message d'erreur

Vous ne pouvez pas répondre à ce sujet.