gpt4 book ai didi

php - Laravel连接MSSqL服务器可以与cli一起使用,但不能在浏览器中使用

转载 作者:行者123 更新时间:2023-12-02 03:54:51 28 4
gpt4 key购买 nike

安装dll以与MSSqL服务器一起使用后,php artisan migrate命令正确运行,并且在db中创建了表。所以我认为该连接适用于此应用程序。

然后,我使用命令 php artisan make:auth (不使用数据库连接)来构建身份验证文件。

现在,当我尝试注册任何人时,我收到错误:

PDOExeption (1/2)

Could not find driver

PDOExeption (2/2)

Could not find driver (select count(*) from .....

现在我尝试查看使用 cli 命令是否仍然有效,并且 php artisan migrate:rollbackphp artisan migrate 仍然有效。

环境:安装了 xampp 的 Windows 7。版本:Laravel 5.4、php 7.1

这并不重要,但这里是我的 .envdatabase.php 文件的部分内容:

`database.php`
'sqlsrv' => [
'driver' => 'sqlsrv',
'host' => env('DB_HOST', '10.0.0.40'),
'port' => env('DB_PORT', '1433'),
'database' => env('DB_DATABASE', 'sqlcon'),
'username' => env('DB_USERNAME', 'sa'),
'password' => env('DB_PASSWORD', 'test'),
'charset' => 'utf8',
'prefix' => '',
],

`.env`
DB_CONNECTION=sqlsrv
DB_HOST=10.0.0.40
DB_PORT=1433
DB_DATABASE=sqlcon
DB_USERNAME=sa
DB_PASSWORD=test

那么为什么 cli 命令可以工作而浏览器却不能呢?

laravel 不为 cli 和浏览器连接使用相同的配置吗?


更新:添加了一些额外信息

C:\xampp\htdocs\sqlcon>php --ini

Configuration File (php.ini) Path: C:\Windows

Loaded Configuration File: C:\xampp\php\php.ini

Scan for additional .ini files in: (none)

Additional .ini files parsed: (none)

二手this显示我的 php 配置,它显示:

Loaded Configuration File C:\xampp\php\php.ini

php -m 命令显示:

C:\xampp\htdocs\sqlcon>php -m

[PHP Modules]

bcmath

...(some others)

pdo_mysql

pdo_sqlite

pdo_sqlsrv (this one is enabled)

Phar

...

[Zend Modules]

根据php -mpdo_sqlsrv已启用,但我在phpinfo页面中找不到任何对它的引用。

最佳答案

我遇到了同样的问题,我已解决如下(WAMP):


1。下载适用于 SQL Server 的 Microsoft PHP 驱动程序

您应该下载以下 2 个 .dll 文件。

  • PHP PDO SQL Server 驱动程序
    例如:- php_pdo_sqlsrv_7_ts_x64.dll
  • PHP SQL Server 驱动程序
    例如:- php_sqlsrv_7_ts_x64.dll

您必须关心:

  • 操作系统。
  • 操作系统版本(32 位/64 位)。
  • PHP 版本。
  • PHP 线程安全 (ts/nts)。

(我的案例:Windows 7 64位/PHP 7/线程安全 -> _7_ts_x64)


2。在 WAMP 中安装适用于 SQL Server 的 PHP 的 Microsoft 驱动程序

将下载的2个.dll文件放入wamp64\bin\php\php*\ext


3。在 WAMP 中为 SQL Server 配置 Microsoft PHP 驱动程序

在默认扩展名后键入以下代码:

extension=php_pdo_sqlsrv_7_ts_x64.dll
extension=php_sqlsrv_7_ts_x64.dll

在以下文件中:
wamp64\bin\apache\apache*\bin\php.ini
wamp64\bin\php\php*\php.ini
wamp64\bin\php\php*\phpForApache.ini


4。重新启动WAMP

关于php - Laravel连接MSSqL服务器可以与cli一起使用,但不能在浏览器中使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44352961/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com