📄 sasql.c
字号:
#define _SASQL_C_#include "version.h"#ifdef _SASQL//新添加#include "main.h"#include "sasql.h"#include <mysql/mysql.h>MYSQL mysql;MYSQL_RES *mysql_result;MYSQL_ROW mysql_row;typedef struct tagConfig{ char sql_IP[16];
int sql_Port;
char sql_ID[16];
char sql_PS[16];
char sql_DataBase[16];
char sql_Table[16];
char sql_LOCK[16];
char sql_NAME[16];
char sql_PASS[16];}Config;Config config;int AutoReg;
BOOL sasql_init( void )
{
printf("\n数据库地址: %s",getsql_IP());
printf("\n数据库端口: %d",getsql_Port());
printf("\n数据库用户: %s",getsql_ID());
printf("\n数据库密码: %s",getsql_PS());
printf("\n登陆数据库名:%s",getsql_DataBase());
printf("\n用户信息表名: %s",getsql_Table());
printf("\n用户锁定表名: %s",getsql_LOCK());
printf("\n账号字段名称: %s",getsql_NAME());
printf("\n密码字段名称: %s",getsql_PASS());
if( !mysql_real_connect( &mysql,
getsql_IP(),
getsql_ID(),//帐号
getsql_PS(),//密码
getsql_DataBase(),//选择的资料库
getsql_Port(),
NULL,
0 ) )
{
printf("\n数据库连接失败!\n");
return FALSE;
}
printf("\n数据库连接成功\!\n");
return TRUE;
}
void sasql_close( void ){ mysql_close( &mysql );}int sasql_query(char *nm, char *pas){ char sqlstr[256]; sprintf(sqlstr,"select * from %s where %s=BINARY'%s'",config.sql_Table,config.sql_NAME,nm); if(!mysql_query(&mysql,sqlstr)){ int num_row=0; mysql_result=mysql_store_result(&mysql); num_row=mysql_num_rows(mysql_result); mysql_free_result(mysql_result); if(num_row>0){ mysql_row=mysql_fetch_row(mysql_result); if(strcmp(pas,mysql_row[1]) == 0){ return 1; }else{ printf("用户%s密码错误!\n",nm); return 2; } }else{ printf("用户%s未注册!\n",nm); return 3; } }else{ printf("\n数据库查找失败!\n"); printf("重新连接数据库..."); sasql_close(); sasql_init(); printf("完成\n"); return 0; }}#ifdef _SQL_REGISTERBOOL sasql_register(char *id, char *ps){ char sqlstr[256];// if(AutoReg!=1)return FALSE; sprintf(sqlstr,"INSERT INTO %s (%s,%s,RegTime,Path) VALUES (BINARY'%s','%s',NOW(),'char/0x%x')",config.sql_Table, config.sql_NAME, config.sql_PASS, id, ps, getHash(id) & 0xff); if(!mysql_query(&mysql,sqlstr)){ printf("\n新用户注册成功!\n"); return TRUE; } printf("\n新用户注册失败!\n"); return FALSE;}#endifBOOL sasql_chehk_lock( char *idip ){ char sqlstr[256]; sprintf(sqlstr,"select * from %s where %s=BINARY'%s'", config.sql_LOCK, config.sql_NAME, idip); if(!mysql_query(&mysql,sqlstr)){ return TRUE; } return FALSE;}BOOL sasql_add_lock( char *idip ){ char sqlstr[256]; sprintf(sqlstr,"INSERT INTO %s (%s) VALUES (BINARY'%s')", config.sql_LOCK, config.sql_NAME, idip); if(!mysql_query(&mysql,sqlstr)){ printf("\n添加锁定%s成功!\n",idip); return TRUE; } return FALSE;}BOOL sasql_del_lock( char *idip ){ char sqlstr[256]; sprintf(sqlstr,"delete from config.SQL_LOCK where %s=BINARY'%s'", config.sql_LOCK, config.sql_NAME, idip); if(!mysql_query(&mysql,sqlstr)){ printf("\n解除锁定%s成功!\n",idip); return TRUE; } return FALSE;}BOOL sasql_craete_lock( void ){}BOOL sasql_craete_userinfo( void ){}#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -