/*******************************************\ | * Ce programme est sous liscence GNU GPL * | | * This software is under GNU/GPL licence * | | * * * * * * * * * * * * * * * * * * * * * * | | * http://www.gnu.org/copyleft/gpl.html * | \*******************************************/ /* Cr er par Laurent Coustet <ed@zehome.com> * http://ed.zehome.com/ * Made by Laurent Coustet <ed@zehome.com> */ #define _GNU_SOURCE #include <mysql/mysql.h> #include <stdarg.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include "mysql.h" #include "debug.h" void _mysql_connect (MYSQL *_mysql, char *_sql_user, char *_sql_host, char *_sql_password, char *_sql_database) { mysql_init(_mysql); /* mysql_options(_mysql,MYSQL_READ_DEFAULT_GROUP,"edsite"); * This segfault mysql 3.23.49 */ if (!mysql_real_connect(_mysql,_sql_host,_sql_user,_sql_password,_sql_database,0,NULL,0)) { printf("ERROR: Failed database connection. MySQLerror: %s\n", mysql_error(_mysql)); return; } MESSAGE("MySQL connection success, user: %s, host: %s, password *****, database: %s\n",_sql_user,_sql_host,_sql_database); return; } void _mysql_disconnect (MYSQL *_mysql) { mysql_close(_mysql); MESSAGE("Connection MySQL closed.\n"); return; } int _mysql_query(MYSQL *_mysql,char *query,...) { char *tmp=NULL; va_list ap; va_start(ap, query); vasprintf(&tmp, query, ap); va_end(ap); free(ap); if (mysql_query(_mysql, tmp) !=0 ) { printf("Impossible d'executer la requete %s\n", tmp); return -1; } else VERBOSE("Requete effectuée avec succès: %s\n", tmp); free(tmp); return 0; }