/*******************************************\
| * 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;
}