install_db.php 개선점입니다.
기존 디비에 테이블이 있을때 재설치시 이미 테이블이 있다고 에러가 나서 보니 기존 테이블 지우는 로직이 없더라구요. 그래서 아래처럼 추가했습니다.
사전에 다음코드 주석처리했습니다.
$result = sql_query(" SELECT @@sql_mode as mode ", true, $dblink);
$row = sql_fetch_array($result);
if($row['mode']) {
//sql_query("SET SESSION sql_mode = ''", true, $dblink);//주석처리
//$mysql_set_mode = 'true';//주석처리
}
기존 코드
// sql_board.sql 파일의 테이블명을 변환
$source = array("/__TABLE_NAME__/", "/;/");
$target = array($create_table, "");
$sql = preg_replace($source, $target, $sql);
sql_query($sql, false, $dblink);
변경된 코드
// sql_board.sql 파일의 테이블명을 변환
$source = array("/__TABLE_NAME__/", "/;/");
$target = array($create_table, "");
$sql = preg_replace($source, $target, $sql);
sql_query("DROP TABLE IF EXISTS $create_table", false, $dblink);//추가한 부분
sql_query($sql, false, $dblink);
감사합니다.
댓글 9개
감사합니다
감사합니다.
감사합니다.
감사합니다.^^
재설치 를 안해봐서 몰라는데 감사합니~~^
사실 SET SESSION sql_mode = true 가 아니면 에러가 안납니다.
mysql 의 특수성입니다.
다른 디비이면 문제가 됩니다.
sql_query("DROP TABLE IF EXISTS $create_table", false, $dblink);
이부분은 mysql 이라도 추가했으면합니다.
기존테이블데 다른 DB있는거 모르고 설치하면 큰일나겠네요 ㅎㅎ
수고하셨습니다.
게시판 목록
그누보드5 팁자료실
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 공지 | 3년 전 | 4427 | ||
| 2394 | 1년 전 | 5051 | ||
| 2393 |
|
1년 전 | 1700 | |
| 2392 |
|
1년 전 | 1358 | |
| 2391 |
|
1년 전 | 1141 | |
| 2390 |
|
1년 전 | 1197 | |
| 2389 | 1년 전 | 1781 | ||
| 2388 | 1년 전 | 1328 | ||
| 2387 | 1년 전 | 1310 | ||
| 2386 |
투명한열정
|
1년 전 | 3074 | |
| 2385 |
|
1년 전 | 2347 | |
| 2384 | 1년 전 | 1670 | ||
| 2383 | 1년 전 | 1807 | ||
| 2382 | 1년 전 | 1456 | ||
| 2381 |
|
1년 전 | 1874 | |
| 2380 | 1년 전 | 1044 | ||
| 2379 | 1년 전 | 1385 | ||
| 2378 | 1년 전 | 919 | ||
| 2377 | 1년 전 | 2999 | ||
| 2376 | 1년 전 | 1565 | ||
| 2375 | 1년 전 | 1737 | ||
| 2374 |
네이비스택
|
1년 전 | 1118 | |
| 2373 | 1년 전 | 1550 | ||
| 2372 | 1년 전 | 1472 | ||
| 2371 |
goodman148
|
1년 전 | 2112 | |
| 2370 | 1년 전 | 1521 | ||
| 2369 |
|
1년 전 | 1033 | |
| 2368 | 1년 전 | 1836 | ||
| 2367 | 1년 전 | 1357 | ||
| 2366 |
|
1년 전 | 1214 | |
| 2365 | 1년 전 | 2146 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기