'PHP&MySQL'에 해당되는 글 1건

  1. 2010.03.20 윈도우에서 PHP + SQL 수동으로 세팅하기 (2)
1.PHP에서 SQL function을 쓰려면

나는 솔직히 PHP모듈을 설치하면 SQL function 자동으로 쓸 수 있는줄 알았다.

그런데 mysql_connect() 함수를 사용해서 DB에 쿼링을 하려고 하
Fatal error: Call to undefined function mysql_connect() in getConnect.php on line 10

라는 메세지가 뜨기 시작했다. 해서 인터넷을 뒤져 뒤져 알게된 사실이 있다.

2.PHP에 SQL Lib 추가하기

첫 번째, PHP가 설치된 곳에 php ver 5이상에는 php.ini파일이 php.ini-development ,php.ini-production 두가지로 제공을 해 주고 있습니다.

이 파일을 php.ini로 변경하여 아래 부분을 변경합니다.

이 파일 내용을 조금 변경을 해야 하는데요. 우성 아래의 extension_dir을 찾기를 사용해서 찾아서 아래와 같이 변경합니다.

[code php];extension_dir = "ext" #위 부분을 아래와 같이 변경합니다. 주의해야 할점은 ";"을 없애줘야 합니다. extension_dir = "C:/inet/PHP/ext"[/code]

그리고 다음에 주석 처리된 것을 지워 줘야 합니다. 위에도 이야기 했지만 "php.ini"파일에서의 주석구분은 ";"으로 시작하느냐에 따라 주석인가 아닌가 하는 것으로 구분합니다.

[code php];extension=php_mysql.dll
;extension=php_mysqli.dll
#위 부분에 ";"부분을 삭제 합니다.[/code]

두 번째, 중요한 것은 환변변수를 추가해 주는 것입니다. 환경변수에 PHP가 설치 되어 있는 경로를 Path변수에 추가를 해줍니다. 이렇게 하지 않으면 C:\windows\system32 폴더 아래에 "*.dll"파일을 복사해 줘야 합니다. 하지만 이 경우 업그레이드시에 별 추천할 방법이 아니라고 합니다.

세 번째, 본래 phpinfo() 함수를 써보면 Configuration File(php.ini)을 불러 오는 곳이 "C:\windows"로 설정되어 있어서 "php.ini"파일 설정 한 것을 "C:\windows"에 복사해야 합니다. 하지만, 이렇게 하지 않고, 레지스트리에 PHP설치 경로를 추가 합니다.

HKEY_LOCAL_MACHINE\SOFTWARE\PHP에 IniFilePath를 추가하고 php.ini파일이 있는 "C:\inet\PHP"를 추가합니다. 아니면, 다음의  내용을 그대로 *.reg 파일로 만들어도 됩니다.
그리고 그것을 실행하고 Apache 서버를 구동하면 됩니다.

[code]Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\PHP]
"IniFilePath"="C:\\inet\\PHP"
[/code]

이렇게하고 나면 mysql_connect() 함수를 써도 아무런 이상없이 잘 돌아 갑니다.

문제는 SQL이 버전차이로 에러가 나더군요.....;;;; 이건 또 극복후에 기회가 되면
Posted by gofly

댓글을 달아 주세요

  1. Favicon of http://magic.wickedmiso.com BlogIcon 사악미소 2014.12.31 14:27 신고  댓글주소  수정/삭제  댓글쓰기

    안녕하세요 올려주신 글 잘 봤는데요.
    환경변수 설정은 php설치경로 까지인가요? 아니면 ext 파일인가요?
    그리고 system32로 옮겨야 하는 파일이 php_mysql.dll 파일인가요 아니면 libmysql.dll 파일 인가요?
    레지스트리 생성된것 까지 다 확인했지만 간단한 db 연결 확인만 하려 해도 에러도 아닌 하얀 창만 떠서 난감하네요

    • Favicon of https://belong2jesus.tistory.com BlogIcon gofly 2014.12.31 20:21 신고  댓글주소  수정/삭제

      dll파일이 있는곳 까지 환경변수에 넣어주시면됩니다(ext까지죠). 이렇게하셨다면 system32를 넣어주지 않으셔도 됩니다. OS환경어느경로에서나 dll파일을 접근할수있기 때문인것입니다. 그래도 넣으시려면 모두다 넣어주셔야 할것입니다^^ dll파일은 자바로 따지면 jar파일 같은것이니까요^^ 어떤 dll이 어떻게 호출될지 모르는것이죠

      도움이 되셨길 바랍니다^^ 새해복많이 받으세요^^