lib 파일 추가생성 후 DB를 긁어오지 못합니다.
본문
안녕하세요. 항상 도움 많이 받고 있습니다.
썸네일 관련해서 새로 lib 파일을 만들고 있는데요.
PHP 파일에서 새로만든 함수 get_photo_thumbnail 로 $photo_id를 보낸 후
lib파일에서 받아온 $photo_id를 이용해서 select를 하려고 하는데요
$photo_id의 값은 잘 전달 받는데.. 그걸 이용해서 select를 하려고 하면 db접속이 안되는지
쿼리문이 날아가지 않습니다.
lib에도 common 파일을 인쿠르드 해야 하나요?
헷갈리네요... ㅠㅠ
PHP 파일
<?php
include_once('./_common.php');
include_once(G5_LIB_PATH.'/common.lib.php');
$build_id = "1";
$build_seq = "1";
$PHOTO_BOARD_TABLE = " SELECT * FROM {$TB['BUILD_SALE_MST_DTL_PHOTO']} WHERE BUILD_ID = '$build_id' AND BUILD_SEQ = '$build_seq' ";
$PHOTO_BOARD_ROW = sql_query($PHOTO_BOARD_TABLE);
$PHOTO_BOARD = sql_fetch_array($PHOTO_BOARD_ROW);
?>
<style>
.master_articlephoto { width:100%; margin:5px; padding:0; }
</style>
<div id="right_input_form">
<div class="master_articlephoto">
<?PHP
$thumbnail = get_photo_thumbnail($PHOTO_BOARD['PHOTO_ID']);
?>
</div>
</div>
LIB 파일
<?php
if (!defined('_GNUBOARD_')) exit;
@ini_set('memory_limit', '-1');
function get_photo_thumbnail($PHOTO_ID, $is_create=false, $is_crop=true, $crop_mode='center', $is_sharpen=false, $um_value='80/0.5/3')
{
$PHOTO_LIST = " SELECT * FROM {$TB['BUILD_SALE_MST_DTL_PHOTO_FILE']} WHERE PHOTO_ID = '$PHOTO_ID' and bf_type between '1' and '3' order by bf_no limit 0, 1 ";
$PHOTO_LIST_ROW = sql_query($PHOTO_LIST);
$row = sql_fetch_array($PHOTO_LIST_ROW);
for ($i=0; $row=sql_fetch_array($PHOTO_LIST_ROW); $i++) {
echo "PHOTO_NAME : ".$row['PHOTO_NAME']."<P>";
}
echo "<script>alert('ERROR!! : ".$PHOTO_ID.$row['photo_name']."');</script>";
}
!-->!-->
답변 5
sql_query()
sql_fetch_array()
위처럼 그누 전용함수를 사용하면 인쿠르드가 필요할듯 싶네요.
처음 부터 다시갈고 다시 해보세요
쿼리를 찍어보세요
include 문제는 아닌거 같은데요?
DB 접속이 안되면 에러를 출력하도록 되어 있을텐데 안된다고 하시니 일단 쿼리부터 확인하셔야 될거 같네요
mysql_query()
mysql_fetch_array()
위처럼 했을 경우에는 해당 파일 상단에 따로 DB접속을 할수 있도록 설정해야 합니다.
sql_query()
sql_fetch_array()
위에 함수를 사용할 경우엔 그누보드 중추파일을 상단에 인쿠르드 하는 것만으로도 따로 DB접속 설정없이 연결이 됩니다.
문제를 찾았습니다.
global 함수를 호출하지 않아서였네요;;;
global $TB, $config;
한줄 추가해서 해결하였습니다.
$TB 라는 테이블을 불러올때 전역변수를 선언 꼭 해야 하네요;;
답변 주셔서 감사합니다.
썸네일 하고 있는데 어렵네요...