그누보드 mysql연결질문드립니다.

그누보드 mysql연결질문드립니다.

QA

그누보드 mysql연결질문드립니다.

답변 1

본문

안녕하세요 php 공부하고 있는 학생입니다.

 

생활코딩의 강의와 교재를 통해 php 공부를 하고 있는데 그누보드5에서 연결하는 mysql접속하는 코드가 달라서 어떻게 수정해야 할지 모르겠습니다.

 

제가 알고 있는 지식은, 

 


$sql = "select * from board where b_code = $code";
$result = mysqli_result($connect,$sql);
while($row=mysqli_fetch_array($result))
{
내용
}

 

이런 식으로 알고 있었습니다만 그누보드에선 쿼리문 작성하고 sql_query($sql)이런형식으로 되어있어서 많이 헷갈려 하고있습니다.

 

가령 g5_write_gallery 에서 추가설정한 컬럼 wr_1의 값을 class테이블에 있는 컬럼class_code의 값에 조인시킬려고 하는 과정을 제가 배웠던것을 이용하면

SELECT cs . *
FROM class AS cs
JOIN g5_write_gallery AS gg ON gg.wr_1 = cs.class_code

이렇게 하는걸로 알고있는데 그누보드5에서는 어떻게 써야하나요?

 

아직 완벽하게 그누보드5를 분석을 하지못해서 질문드려봅니다...

이 질문에 댓글 쓰기 :

답변 1


$sql = "
  SELECT cs . *
    FROM class AS cs
           JOIN g5_write_gallery AS gg ON gg.wr_1 = cs.class_code
";
 
$result = sql_query($sql);
 
while($row = sql_fetch_array($result)) {
내용
}

 

그누보드에서 sql_query(), sql_fetch() 등은 사용자 함수입니다.

 

/lib/common.lib.php 의 파일에서 sql_query(), sql_fetch(), sql_fetch_array() 등의 함수 정의된 내용을 살피면

그 안에서는 mysqli_query(), mysqli_fetch_assoc() 등을 사용하는 것을 알 수 있습니다.

이를 보통 wrapper 함수라고 부르기도 합니다.

이는, 사용자 편의성의 이유도 있고, mysqli_~() 함수를 지원하지 않는 환경 등의 고려가 포함되어 있습니다.

 

그누보드의 사용자 정의 함수인 sql_query(), sql_fetch_array(), sql_fetch() 에 익숙해지면 상당히 편하다는 것을 느낄 수 있을 것입니다.

 

/bbs 디렉토리의 view.php, write_update.php 등의 소스를 참고하는 것도 괜찮을 듯 싶습니다.

 

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 36
© SIRSOFT
현재 페이지 제일 처음으로