Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

PHP IIS7 MSSQL Wywołanie niezdefiniowanej funkcji sqlsrv_connect

Po prostu sam miałem ten problem. W końcu to naprawiłem, więc pomyślałem, że się podzielę.

Problem polegał na tym, że chociaż miałem zainstalowaną bibliotekę sqlsrv dll (skopiowaną do mojego folderu php/ext), i Dodałem to w moim php.ini, w IIS, było „wyłączone” .

Oto kilka instrukcji krok po kroku, na wypadek, gdyby ktoś ponownie miał ten sam problem. (Lub dla przyszłego odniesienia dla mnie :))

  1. Pobierz (i zainstaluj) sterowniki SQL Server (.dll)

    • Zainstaluj je, uruchamiając plik .exe i wpisując ścieżkę do folderu z rozszerzeniami php, gdy pojawi się pytanie, gdzie je rozpakować.
      • Aby znaleźć bieżący katalog rozszerzeń, uruchom (cmd.exe) php -i | więcej i poszukaj wiersza extension_dir . (Dla mnie było to czwarte naciśnięcie więcej ). Alternatywnie utwórz prosty plik php zawierający tylko i uruchom go w przeglądarce. To da te same informacje, ale w znacznie łatwiejszym do odczytania formacie.
  2. Dodaj rozszerzenie do swojego php.ini

    • Aby znaleźć właściwy plik php.ini, uruchom php -i | więcej ponownie, szukając Wczytanego pliku konfiguracyjnego , lub ponownie sprawdź ten prosty skrypt php (gorąco polecam - zaoszczędzi to czasu i wysiłku). Ścieżka, którą tam znajdziesz, to plik, który musisz edytować.
    • Dodaj następujące wiersze do pliku php.ini i zapisz go:

      [PHP_SQLSRV]extention=php_sqlsrv_56_nts.dll

  3. Włącz rozszerzenie w Menedżerze IIS

    • W menu Start wpisz Menedżer IIS i naciśnij Enter.
    • Kliknij nazwę swojego serwera na pasku po lewej stronie
    • Kliknij Menedżer PHP
    • W sekcji Rozszerzenia PHP , kliknij Włącz lub wyłącz rozszerzenie .
    • Jeśli twoje rozszerzenie nie jest Włączone , spójrz na Wyłączone dla tego. Gdy go znajdziesz, kliknij prawym przyciskiem myszy i kliknij Włącz w wyświetlonym menu kontekstowym.
  4. Sprawdź, czy zadziałało

    • Otwórz to phpinfo() strony, którą stworzyłeś (zrobiłeś, prawda?) i spójrz na Zarejestrowane strumienie PHP . Jeśli widzisz sqlsrv na tej liście jesteś ustawiony!


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Grupuj DateTime w odstępach 5,15,30 i 60 minut

  2. Jak zmienić hasło sa w SQL Server 2008 express?

  3. Dlaczego kolumna TEXT zwraca tylko 4096 bajtów?

  4. TSQL PIVOT WIELE KOLUMN

  5. Emulować/symulować lokalnie SQL Azure?