mysql_login.c(数据库登录)
#include<stdio.h> #include<unistd.h> #include<mysql/mysql.h> #include<stdlib.h> int main() { printf("Content-Type:text/html;charset=utf-8\n\n"); MYSQL m_sql; //创建MYSQL对象 mysql_init(&m_sql); //初始化对象 MYSQL *sql = mysql_real_connect(&m_sql,"localhost","root","123","test",3306,NULL,0);//链接到数据库 if(sql == NULL) { printf("<p>Connect Mysql Fail.\n"); exit(1); } char user[20] = {0}; char password[20] = {0}; int i = 0; char *data = getenv("QUERY_STRING"); //查询sql语句 if(data == NULL) printf("<p>接收数据出错."); else { while(*data != '=') data++; data++; //skip = while(*data != '&') { user[i++] = *data; data++; } data++; //skip & while(*data != '=') data++; data++; i = 0; while(*data != '\0') { password[i++] = *data; data++; } } MYSQL_ROW sqlrow; MYSQL_RES *res_ptr; char select[100] = {0}; sprintf(select,"select user_passwd from user_info where user_name='%s'",user); int res = mysql_query(&m_sql, select); res_ptr = mysql_store_result(&m_sql); if(res_ptr) { sqlrow = mysql_fetch_row(res_ptr); } else { printf("<p>database data error."); exit(1); } if(strcmp(sqlrow[0], password) == 0) { FILE *fp = fopen("./htdocs/bigcalc.html","r"); if(NULL == fp) { printf("<h1> Not Found 404</h1>"); exit(1); } char buf[128]; while(!feof(fp)) { fgets(buf, 128, fp); printf(buf); } fclose(fp); } else { printf("<p>user name or user password error."); } mysql_close(&m_sql); return 0; }