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

그누보드 mysql연결질문드립니다. 채택완료

서잰션 5년 전 조회 2,940

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

 

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

 

제가 알고 있는 지식은, 

 

</p>

<p>$sql = "select * from board where b_code = $code";</p>

<p>$result = mysqli_result($connect,$sql);</p>

<p>while($row=mysqli_fetch_array($result))</p>

<p>{</p>

<p>내용</p>

<p>}</p>

<p>

 

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

 

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

<a href="<a href="http://wnghks2516.cafe24.com/DBconnection/url.php?url=http%3A%2F%2Fdev.mysql.com%2Fdoc%2Frefman%2F5.1%2Fen%2Fselect.html&token=f345916497ffb7c42d27f99c14941604" target="_blank" rel="noopener noreferrer">http://wnghks2516.cafe24.com/DBconnection/url.php?url=http%3A%2F%2Fdev.mysql.com%2Fdoc%2Frefman%2F5.1%2Fen%2Fselect.html&token=f345916497ffb7c42d27f99c14941604</a>" target="mysql_doc">SELECT</a> cs . *

FROM class AS cs

JOIN g5_write_gallery AS gg ON gg.wr_1 <a href="<a href="http://wnghks2516.cafe24.com/DBconnection/url.php?url=http%3A%2F%2Fdev.mysql.com%2Fdoc%2Frefman%2F5.1%2Fen%2Fcomparison-operators.html%23operator_equal&token=f345916497ffb7c42d27f99c14941604" target="_blank" rel="noopener noreferrer">http://wnghks2516.cafe24.com/DBconnection/url.php?url=http%3A%2F%2Fdev.mysql.com%2Fdoc%2Frefman%2F5.1%2Fen%2Fcomparison-operators.html%23operator_equal&token=f345916497ffb7c42d27f99c14941604</a>" target="mysql_doc">=</a> cs.class_code

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

 

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

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

답변 1개

채택된 답변
+20 포인트
5년 전

</p>

<p>$sql = "

  SELECT cs . *

    FROM class AS cs

           JOIN g5_write_gallery AS gg ON gg.wr_1 = cs.class_code

";</p>

<p> </p>

<p>$result = sql_query($sql);</p>

<p> </p>

<p>while($row = sql_fetch_array($result)) {

내용

}</p>

<p>

 

그누보드에서 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 등의 소스를 참고하는 것도 괜찮을 듯 싶습니다.

 

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

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

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

로그인