데이터베이스 테이블 생성 시 생성되지 않는 오류
본문
<?
include "connect_db.php";
mysqli_set_charset($conn,"utf8");
/* 데이터 베이스에 존재하는 테이블 검색 */
if($result == 1) {
$tb_name = mysqli_list_tables("apm_db");
$tb_count = mysqli_num_rows($tb_name);
for($a=0; $a<$tb_count;$a++)
if(mysqli_tablename($tb_name,$a) == "user_tbl") {
$flag = "ok";
break;
}
}
/*테이블이 존재하지 않을때는 아래를 실행 */
if($flag != "ok") {
$sql = "create table user_tbl(no int primary key not null auto_increment,
userid varchar(12) not null, name varchar(12) not null, passwd varchar(12),
sex char(1), email varchar(30), date datetime,
ip_addr varchar(30)) DEFAULT CHARACTER SET utf8";
$sql2 = "create table board_free (
b_no int unsigned not null primary key auto_increment,
b_title varchar(100) not null, b_content text not null,
b_date datetime not null, b_hit int unsigned not null default 0,
b_id varchar(20) not null, b_password varchar(100) not null
) DEFAULT CHARACTER SET utf8";
$result = mysqli_query($sql, $conn) or die("user_tbl 테이블이 이미 존재 합니다.");
$result2 = mysqli_query($sql2, $conn) or die("board_free 테이블이 이미 존재 합니다.
<meta charset='utf-8'><script> alert(' 테이블이 이미 존재 합니다.');
location.replace('../join/success.php');
</script>");
}
echo "테이블이 만들어졌습니다. <br />";
mysqli_close($conn);
?>
소스상에 문제가 있는지, 현재 문제가
이렇게 뜨는 상태입니다. 데이터베이스 정보는 모두 맞아서 연결 성공이 된것을 확인하였습니다.
(호스트명도 다른걸로바꿔서 실패했는지 확인하면서 제대로 확인 완료)
그런데, 테이블이 이미존재되어있다고 하는데,
테이블이 보시다시피 전혀 없는..... 상황이여서요... 소스상에 문제가 있는걸까요?
!-->
답변 3
..mysqli_query 파라미터 순서가 바뀌였습니다 구글에 해당 함수 문서를 참조하세요. mysqli_query($conn,$sql) 이순입니다.
create문은 이상없습니다. $conn 변수쪽에 문제가 있는듯합니다.
mysqli_list_tables("apm_db");
사용하시는 DB 명이 apm_db인데
이미지에 있는 것은 wookw네요.
답변을 작성하시기 전에 로그인 해주세요.