sql >> Database teknologi >  >> RDS >> Sqlserver

PHP IIS7 MSSQL Kald til udefineret funktion sqlsrv_connect

Jeg har lige selv haft dette problem. Jeg fik det endelig rettet, så jeg tænkte, at jeg ville dele.

Problemet var, at selvom jeg havde sqlsrv dll'en installeret (kopieret til min php/ext-mappe), og Jeg fik det tilføjet i min php.ini, i IIS, det var 'deaktiveret' .

Her er nogle trinvise instruktioner, hvis nogen har det samme problem igen. (Eller til fremtidig reference for mig :))

  1. Download (og installer) SQL Server-driverne (.dll)

    • Installer dem ved at køre .exe, og skriv stien til din php-udvidelsesmappe, når den spørger dig, hvor du skal dekomprimere dem.
      • For at finde din aktuelle udvidelsesmappe, kør (cmd.exe) php -i | mere , og se efter linjen extension_dir . (For mig var det ved det fjerde tryk på mere ). Alternativt kan du lave en simpel php-fil, der kun indeholder , og kør det i browseren. Dette vil give den samme information, men i et meget lettere at læse format.
  2. Tilføj udvidelsen til din php.ini

    • For at finde den rigtige php.ini skal du enten køre php -i | mere igen, leder efter Loaded Configuration File , eller tjek det simple php-script igen (jeg anbefaler stærkt, at du laver det - det sparer dig tid og kræfter). Stien, du finder der, er den fil, du skal redigere.
    • Tilføj følgende linjer til din php.ini, og gem den:

      [PHP_SQLSRV]extention=php_sqlsrv_56_nts.dll

  3. Aktiver udvidelsen i IIS Manager

    • Indtast IIS Manager i startmenuen , og tryk på enter.
    • Klik på din servers navn i venstre sidebjælke
    • Klik på PHP Manager
    • Under PHP-udvidelser , klik på Aktiver eller deaktiver en udvidelse .
    • Hvis din udvidelse ikke er under Aktiveret , se under Deaktiveret for det. Når du finder det, skal du højreklikke på det og klikke på Aktiver i kontekstmenuen, der vises.
  4. Test for at sikre, at det virkede

    • Åbn den phpinfo() side, du lavede (det gjorde du, gjorde du ikke?), og se under Registrerede PHP-streams . Hvis du ser sqlsrv på den liste er du klar!


  1. Sådan opdeles en streng i rækkefølge med en kommasepareret streng og (mulige) tomme felter mellem kommaer

  2. Hvordan tæller man rækker, der opfylder en betingelse i Redshift/Postgres?

  3. Gendan flere SQL Server .bak-filer

  4. Standardafvigelseskommando i SQL