作者共发了2篇帖子。 字体大小:较小 - 100% (默认)▼  内容转换:不转换▼
 
点击 回复
357 1
[backup] logview.c
一派护法 十九级
1楼 发表于:2016-2-9 20:34
#include <mysql/mysql.h>
#include <stdio.h>
#include "conn.h"

void putstr(char *s, FILE *fp, char display)
{
    fputs(s, fp);
    fputc('\n', fp);
    if (display == 1)
        puts(s);
}

int main(int argc, char *argv[])
{
    char ch;
    char IP[16];
    char line[100];
    char sql[150];
    int i = 0;
    FILE *fp;
    MYSQL conn;
    MYSQL_RES *rs;
    MYSQL_ROW row;
    
    /* Get IP Address */
    if ((fp = fopen("IP.txt", "r")) == NULL)
    {
        printf("Cannot open the file for IP Address.\n");
        return 1;
    }
    while (ch = fgetc(fp), !feof(fp))
    {
        if ((ch >= '0' && ch <= '9') || ch == '.')
            IP[i++] = ch;
        else
            break;
        if (i == sizeof(IP) - 1)
            break;
    }
    IP[i] = '\0';
    fclose(fp);
    
    /* Open Log File */
    if ((fp = fopen("powerlog.txt", "w")) == NULL)
    {
        printf("Cannot open the file.\n");
        return 2;
    }
    printf("Powerlog Version 2.3\n");
    putstr("ID\tTIME", fp, 1);
    
    /* Init MySQL Connection */
    mysql_init(&conn);
    if (!mysql_real_connect(&conn, SERVER_NAME, DB_USER, DB_PASSWORD, DB_NAME, 0, NULL, 0))
    {
        printf("Cannot connect to the database server.\n");
        return 3;
    }
    mysql_set_character_set(&conn, "utf8");
    
    /* Query */
    sprintf(sql, "SELECT LogID, LogTime FROM PowerLog WHERE LogFlag = 'POWER ON' AND ComputerIP = '%s' ORDER BY LogTime DESC", IP);
    mysql_query(&conn, sql);
    rs = mysql_store_result(&conn);
    for (i = 0; row = mysql_fetch_row(rs); i++)
    {
        sprintf(line, "%d\t%s", atoi(row[0]), row[1]);
        putstr(line, fp, (i < 20));
    }
    mysql_free_result(rs);
    fclose(fp);
    
    mysql_close(&conn);
    return 0;
}
一派护法 十九级
2楼 发表于:2016-2-9 20:34
MYSQL = -lmysqlclient

logview: conn.h logview.c
    gcc logview.c -o logview $(MYSQL)

回复帖子

内容:
用户名: 您目前是匿名发表
验证码:
(快捷键:Ctrl+Enter)
 

本帖信息

点击数:357 回复数:1
评论数: ?
作者:巨大八爪鱼
最后回复:巨大八爪鱼
最后回复时间:2016-2-9 20:34
 
©2010-2024 Arslanbar Ver2.0
除非另有声明,本站采用知识共享署名-相同方式共享 3.0 Unported许可协议进行许可。