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

mysql_query() 에 대한 질문입니다.

DEVizzer 9년 전 조회 8,621

안녕하세요. 그누보드를 애용하는 사용자입니다.

 

mysql_query() 함수에 대한 질문인데요...

 

이번에 서버시스템을 변경하여 php버젼을 5.6.27 로 업그레이드를 하였습니다.

 

사이트를 제작중에 게시물을 출력하기 위해 쿼리를 날리는데, 쿼리에서 에러가 나네요..;;;

 

기존에 매번 동일하게 작성해서 쓰던터라, 구문자체에는 오타같은 문제는 없을듯 한데.. 

 

<?

$sql = "SELECT * FROM g5_write_notice";

$result = mysql_query($sql);

?>

 

이 구문이 들어가면 Warning: mysql_query(): Access denied for user ''@'localhost' (using password: NO) 가 출력이 됩니다.

(물론 상단에 common.php 는 정상적으로 인클루드를 하였습니다.)

 

기존시스템(5.2 버젼 이하) 에선 정상적으로 사용을 했었는데... 

버젼이 올라가면서 함수의 레퍼런스가 달라진건 알고 있지만, 정확히 뭐가 문제인질 모르겠네요...

 

DB나 기타 다른 문제가 있다면 그누보드 설치자체나 게시판에서 어떠한 문제가 있었을텐데..

게시판의 경우 현재 다른 문제 없이 정상적인 출력을 보여줍니다.

 

골때리는건..

<?

$connect = mysql_connect("localhost", "root", "password");

mysql_select_db("db");

$sql = "SELECT * FROM g5_write_notice";

$result = mysql_query($sql, $connect);

.

.

.

?>

와 같이 상단에서 직접적인 DB connecting 을 하면 정상적인 출력을 해줍니다... 

단순히 mysql_query() 함수 사용에 따른 자체의 문제라면, 여기서도 문제가 발생을 해야 될텐데 말이죠..

 

고수님들의 엄격하신 지도편달을 부탁드립니다. 

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

답변 4개

편리
9년 전

PHP7은 mysqli 만 지원합니다. 그래서 서버의 php 에서 mysqli 를 지원하면 기본적으로

mysqli_* 함수를 사용하게 됩니다. mysqli_connect 함수를 이용해 db 에 연결된 상태에서

mysql_* 함수를 사용하면 위와 같은 오류가 발생합니다. mysql_* 함수 대신 mysqli_*

함수를 사용하셔야 합니다.

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

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

D
9년 전

몇일을 해메다 자체적인 결론에 이르렀습니다.

php7 을 지원하기 위해 버젼업된 5.1.3 버젼부터 해당 문제가 발생을 하네요... 

이건 버그신고쪽에서 따로 답변을 얻어야 될듯 합니다.

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

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

d
9년 전

해당페이지에서  DB connecting이 안되고있는것같네요 아니면 정보가 틀리신걸수도있으니 /data/dbconfig.php에서 다시한번 확인해보세요

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

답변에 대한 댓글 1개

D
DEVizzer
9년 전
제가 어제 댓글을 달려고 했는데.. 게시글수 제한인가 뭐가 걸려서..댓글이 하루에 3개밖에는 작성이 안되서 못달았습니다 ㅠㅠ
dbconfig 은 이미 질문전에 확인을 했던 내용이라... 그냥 그누보드만 설치하고 나머지 소스 없이 한번 테스트 해보려구요. ㅠㅠ

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

9년 전

sql_query() 로 해보시면 .... 

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

답변에 대한 댓글 1개

D
DEVizzer
9년 전
sql_query()가 그누보드자체함수인건 아는데, 이거를 쓰면.. Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given 에러가 생깁니다..

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

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

로그인