string checkRegist(char *msg){
char email[EMAIL_SIZE]={0,};
char phone[PHONE_SIZE]={0,};
char pw[PW_SIZE]={0,};
char query[255]={0,};
int query_stat;
int i=0;
int pk=0;
int temp=0;
string answer = "11SUCCESS";
strncpy(email, msg, EMAIL_SIZE);
strncpy(pw, msg+EMAIL_SIZE, PW_SIZE);
strncpy(phone, msg+EMAIL_SIZE+PW_SIZE, PHONE_SIZE);
printf(" 회원가입 로그\n");
printf(" Email : %s \n pw : %s \n Phone : %s\n",email,pw,phone);
pk = is_email_duplicated(email);
printf("회원가입 pk : %d\n", pk);
if(pk != -1){
printf("회원가입 FAILURE 들어옴\n");
answer = "11FAILURE";
}else{ // 회원가입 디비 다음 행에 추가
temp = 0;
mysql_data_seek(res,0);
while((row = mysql_fetch_row(res)) != NULL){
printf("db 안 email : %s\n", row[0]);
temp = atoi(row[4]);
printf("temp(pk) : %d\n", temp);
}
temp++;
printf("register 될 temp : %d\n", temp);
sprintf(query, "insert into person1 values ('%s', '%s', '%s', null, '%d', null, null)",
email, pw, phone, temp);
query_stat = mysql_query(conn, query);
}
return answer;
}
int is_email_duplicated(char* msg){
mysql_data_seek(res,0);
printf("is email 들어옴 \n");
printf("msg email : %s\n", msg);
printf("msg email cnt : %d\n", strlen(msg));
while((row = mysql_fetch_row(res)) != NULL)
{
if(!strcmp(row[0],msg))
{
printf("duplication");
return atoi(row[4]);
}
}
return -1;
}
안드로이드 앱을 만들어 서버를 연동해서 디비에 있는 데이터를 가져오는 데 insert를 이용해 값이 디비에 처음에는 넣어지는 데 두번 째에는 바로 디비에 안 넣어지고 서버를 꺼야 넣어집니다. 어떻게 해야할까요? |