list.php에서 db연동부분
본문
그누보드에서는
common.php에서 db연동하는 소스가 있잖아요
근데 저는 db를 호스팅에서 제공하는 내부db와 외부서버에서 사용한 외부db
두개를 사용하고자 합니다.
$dbconfig_file = G5_DATA_PATH.'/'.G5_DBCONFIG_FILE;
if (file_exists($dbconfig_file)) {
include_once($dbconfig_file);
include_once(G5_LIB_PATH.'/common.lib.php'); // 공통 라이브러리
$connect_db = sql_connect(G5_MYSQL_HOST, G5_MYSQL_USER, G5_MYSQL_PASSWORD) or die('MySQL Connect Error!!!');
$select_db = sql_select_db(G5_MYSQL_DB, $connect_db) or die('MySQL DB Error!!!');
// mysql connect resource $g5 배열에 저장 - 명랑폐인님 제안
$g5['connect_db'] = $connect_db;
//DB추가
$g5['connect_db_in'] = $connect_db;
$connect_db_out = sql_connect("외부host", "ID", "PW") or die('MySQL Connect Error!!!');
$select_db_out = sql_select_db("DB명", $connect_db_out) or die('MySQL Connect Error!!!');
$g5['connect_db_out'] = $connect_db_out;
sql_query(" set names utf8 ");
if(defined('G5_MYSQL_SET_MODE') && G5_MYSQL_SET_MODE) sql_query("SET SESSION sql_mode = ''");
if (defined(G5_TIMEZONE)) sql_query(" set time_zone = '".G5_TIMEZONE."'");
} else {
?>
이런식으로 일단 .. 추가를 해줬는데
board2라는 게시판에만 외부db에서 정보를 가져와 보여주고 싶습니다.
그러면 list.php에서
if문을 주어서
if($botable == board2) {
외부db연결 하여 게시글 출력
}
이런식으로 생각을 하고 있습니다...
list.php에서 어떤 부분에 저런 작업을 해주면 될까요?
!-->
답변 1
설정이야 어떻게 하던 상관이 없지만 쉽게 사용하기 위해서 배열로 변경하면 편하실 겁니다
$db1['host'] = 'localhost';
$db1['user'] = 'tester';
$db1['pass'] = 'password';
$db1['this'] = 'tester_db';
$db2['host'] = 'localhost';
$db2['user'] = 'tester2';
$db2['pass'] = 'password';
$db2['this'] = 'tester2_db';
이런형태로 dbconfig.php파일에 저장을 하고
@mysql_close($connect_db);
$connect_db = mysql_connect($db2['host'], $db2['user'], $db2['pass']);
$select_db = mysql_select_db($db2['this'], $connect_db);
if (!$select_db){
die("<meta http-equiv='content-type' content='text/html; charset=$g4[charset]'><script type='text/javascript'> alert('잘못된 접속입니다'); </script>");
exit;
}
이런 형태로 새로운 데이터 베이스에 접근을 합니다