c에 mysql 데이터 불러오기
void main() { // 로그인 form
char id[20], pwd[20];
int state = 0;
char query[255]; // 쿼리에 메모리 할당
mysql_init(&mysql);
connection = mysql_real_connect(&mysql, DB_HOST, DB_USER, DB_PASS, DB_NAME, 3306, (char *)NULL, 0); // db 연결
state = mysql_query(connection, "select * from member"); // db 테이블 불러오기
res = mysql_store_result(connection);
printf("\t\t< 로그인 >\n\n");
// printf("%20s %10s", "아이디", "패스워드");
while ((row = mysql_fetch_row(res)) != NULL) {
//printf("%20s %10s\n", row[1], row[2]);
}
mysql_free_result(res);
printf("아이디 : ");
scanf("%s", id);
// fgets(id, 20, stdin); // 문자열을 받음
// CHOP(id);
sprintf(query, "select * from member where id = '%s'", id);
mysql_query(conn, query);
if (id == row[1]) { // 아이디가 일치하면 비밀번호 입력으로 넘어감
printf("패스워드 : ");
fgets(pwd, 10, stdin);
// CHOP(pwd);
sprintf(query, "select * from member where pwd = %s", pwd);
if (pwd == row[2]) { // 비밀번호가 일치하면 로그인 성공
printf("로그인 성공\n");
}
else { // 아이디는 일치. 비번은 불일치하면 패스워드를 잘못입력하셨습니다.
printf("패스워드를 잘못 입력하셨습니다.\n");
}
}
else { // 아이디가 불일치하면 아이디가 일치하지 않았습니다로 넘어감
printf("아이디가 일치하지 않습니다.\n");
}
state = mysql_query(connection, query);
printf("state : %d\n", state);
if (state != 0) {
fprintf(stderr, "Mysql query error : %s", mysql_error(&conn));
return 1;
}
mysql_close(connection);
}
댓글 달기