服务器和客户端搭建好后,创建一个属于银行职工的类,类里面有职工的姓名,账号和密码,首先是注册,打开自己电脑上的MySQL数据库,在里面创建一个表格用来存放职工和客户的信息,然后在客户端的的注册里面输入自己的信息,通过send将信息传送到服务器中去,因为客户端会有各种不同的指令传送过来,所以需要你在类里面设置一些标志符来区分各个指令,服务器根据不同的指令来调用相关的函数,在收到注册的信息内容后,服务器便会打开本地的mysql,将收到的信息存放到银行职工的表格里去,下面是服务器操作的数据库代码:
打开本地的数据库:
// 初始化一个连接句柄MYSQL MYSQL* mysql; mysql = mysql_init(NULL); if (mysql == NULL) { PRintf("error: %s/n", mysql_error(mysql)); return 1; } my_bool reconnect = true; mysql_options(mysql, MYSQL_OPT_RECONNECT, &reconnect); mysql_options(mysql, MYSQL_SET_CHARSET_NAME, "gbk"); if (!mysql_real_connect(mysql, NULL, "root", "132097", "gushuaige", 0, NULL, 0)) { printf("error: %s/n", mysql_error(mysql)); return 1; }注册:
int result; // 没有返回结果集的操作 char buff[200]; sprintf(buff,"insert into zhigong values('%s',%d,'%s')",(object->shname()).c_str(),object->shaccount(),(object->shpassWord()).c_str()); result = mysql_query(mysql,buff); if (result != 0) { printf("error: %s/n", mysql_error(mysql)); return fail; } else { printf("%llu 行受影响 添加信息成功!/n", mysql_affected_rows(mysql)); return success ; }注册好后便是登陆,客户端输入自己的账号和密码传送给服务器,服务器拿接收到的账号去找到数据库中的该栏,将里面的密码与接收到的密码进行比较,相同则返回success给客户端,从而进入操作的界面,不同则给个友好提示返回主界面,重新操作或输入,下面是登录的操作代码:int result ; char buff[200]; sprintf(buff,"select * from zhigong where id=%d;",object->shaccount()); result = mysql_query(mysql, buff); if (result != 0) { printf("error: %s/n", mysql_error(mysql)); return 1; } MYSQL_RES* mysql_res; MYSQL_FIELD* mysql_field; MYSQL_ROW mysql_row; unsigned int cols; mysql_res = mysql_store_result(mysql); cols = mysql_num_fields(mysql_res); if (mysql_res) { while ((mysql_row = mysql_fetch_row(mysql_res))) { for (unsigned int i=0; i<cols; ++i) { printf("%s/t", mysql_row[i] ? mysql_row[i] : "NULL"); } printf("/n"); if(mysql_row[2] == object->shpassword()) { object->setmuser(mysql_row[0],atoi(mysql_row[1]),mysql_row[2]) ; return success ; } else { return fail ; } } mysql_free_result(mysql_res); }
新闻热点
疑难解答
图片精选