테스트 사이트 - 개발 중인 베타 버전입니다

php+mssql 연동 오류 ...

주니준이 2년 전 조회 3,209

 

해보라는 건 다 해봤는데 뭐가 문제일까요? 으어

댓글을 작성하려면 로그인이 필요합니다.

답변 5개

하틴
2년 전

php로 mssql을 쓰실려면 서버에 몇가지 설정을 해줘야하나봐요

 

https://www.happyjung.com/lecture/2923?device=pc

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

주니준이

 

php.ini 이렇게 되어있구요

extension=mssql

extension=sqlsrv
extension=pdo_sqlsrv

 

오류메시지는 아래와 같이 뜨네요

 

PHP-7.4.7 원본에서 이벤트 ID 4에 대한 설명을 찾을 수 없습니다. 이 이벤트를 발생시킨 구성 요소가 로컬 컴퓨터에 설치되어 있지 않거나 설치가 손상되었습니다. 로컬 컴퓨터에서 구성 요소를 설치 또는 복구할 수 있습니다.

이벤트가 다른 컴퓨터에서 시작된 경우 표시 정보를 이벤트와 함께 저장해야 합니다.

다음 정보가 이벤트와 함께 포함되었습니다.

php[8208]
PHP Warning: PHP Startup: Unable to load dynamic library 'mssql' (tried: C:/Bitnami/wampstack-7.4.7-0/php/ext\mssql (지정된 모듈을 찾을 수 없습니다.), C:/Bitnami/wampstack-7.4.7-0/php/ext\php_mssql.dll (%1은(는) 올바른 Win32 응용 프로그램이 아닙니다.)) (C:\Bitnami\wampstack-7.4.7-0\apache2\bin\httpd.exe -d C:/Bitnami/wampstack-7.4.7-0/apache2 -f C:\Bitnami\wampstack-7.4.7-0\apache2\conf\httpd.conf)

메시지 리소스가 있지만 메시지 테이블에서 메시지를 찾을 수 없습니다
 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 4개

배르만
2년 전
에러메세지에 답이 나온것 같은데
php_mssql.dll 은 php 5.2 까지만 지원됩니다.

아래처럼 주석처리 하거나
[code]
;extension=mssql
[/code]
해당 라인을 지워보세요
주니준이
2년 전
오류 있는 응용 프로그램 이름: httpd.exe, 버전: 2.4.43.0, 타임스탬프: 0x5ea00a5d
오류 있는 모듈 이름: php_oci8_12c.dll, 버전: 7.4.7.0, 타임스탬프: 0x5edf998d
예외 코드: 0xc0000005
오류 오프셋: 0x000000000000132c
오류 있는 프로세스 ID: 0x3964
오류 있는 응용 프로그램 시작 시간: 0x01d8f97a385b80fb
오류 있는 응용 프로그램 경로: C:\Bitnami\wampstack-7.4.7-0\apache2\bin\httpd.exe
오류 있는 모듈 경로: C:\Bitnami\wampstack-7.4.7-0\php\ext\php_oci8_12c.dll
보고서 ID: a2079ecc-0be3-4f4d-8dc4-38e1f606e81b
오류 있는 패키지 전체 이름:
오류 있는 패키지에 상대적인 응용 프로그램 ID:

이 오류가 뜨네요...
배르만
2년 전
MS SQL Server 와는 무관한 모듈에서 문제가 생기는것 같은데
Oracle DB 관련 라이브러리 같고
사용안하실꺼면 그부분도 주석처리하거나 지우는게 낫습니다.
주니준이
2년 전
주석처리 했는데도 똑같은 오류가 뜨네요...

댓글을 작성하려면 로그인이 필요합니다.

플라이
2년 전

DB서버가 mssql인거 같은데 같은 서버에 있는건가요?
로그를 확인해 보면 좋긴 한데 일단 DB서버에 정상적으로 붙는지 부터 sql_mangement로 실행해서 체크해 보시고 정상적으로 된다면 서버단에서 통신하는 과정에 문제가 있는듯 합니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

에러 메시지 출력

https://learn.microsoft.com/ko-kr/sql/connect/php/how-to-handle-errors-and-warnings-using-the-sqlsrv-driver?view=sql-server-ver16

참고하세요.

 

$conn = sqlsrv_connect( $serverName, $connectionInfo); /* If the connection fails, display errors and exit the script. */ if( $conn === false ) { DisplayErrors(); die; }

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

2년 전

오류 메세지는 어떻게 출력되나요?

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

주니준이
2년 전
echo 연결 실패라고 연결실패라고 뜨고요 아무것도 설정 안하면 아무것도 안뜹니다.
배르만
2년 전
좀 더 자세한 오류정보를 출력할수 있는 방법을 찾아보세요.
연결실패 메세지는 추상적이어서 추측하는데 시간이 너무 걸릴수 있습니다.
또는 sqlserver 오류 로그를 확인해보세요
sqlserver 에서 관련 오류로그가 보인다면 접속은 일단 된다고 가정해볼수 있고
그게 아니면 접속자체가 안된다 정도의 추측이 가능할것 같습니다.
하지만 어디까지나 추측이기 때문에 가장 좋은건 로그를 자세히 뿜어내게 하고 관련사항을 확인하는 것입니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인