annotate clock.c @ 0:831599184108

inital commit can increment the time in the database
author meillo@marmaro.de
date Mon, 12 May 2008 21:24:20 +0200
parents
children 8369454d4ec9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
1 #include <stdio.h>
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
2 #include <stdlib.h>
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
3 #include <mysql.h>
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
4
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
5 #include "db.h"
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
6
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
7 char query[512];
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
8
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
9
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
10 int check_game(char* gamename) {
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
11 int rows;
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
12
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
13 sprintf(query, "select id from simulation where name = '%s' ", gamename);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
14 db_query(query);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
15 result = mysql_store_result(conn);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
16 rows = mysql_num_rows(result);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
17 mysql_free_result(result);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
18 return rows;
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
19 }
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
20
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
21
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
22 void inc_time(char* gamename) {
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
23 int time = 0;
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
24
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
25 /* get current time */
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
26 sprintf(query, "select time from simulation where name = '%s' ", gamename);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
27 db_query(query);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
28 result = mysql_store_result(conn);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
29 if (mysql_num_rows(result)) {
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
30 row = mysql_fetch_row(result);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
31 time = atoi(row[0]);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
32 }
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
33 mysql_free_result(result);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
34
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
35
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
36 /* increment time */
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
37 sprintf(query, " update simulation set time = '%d' where name = '%s' ", ++time, gamename);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
38 db_query(query);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
39 if (mysql_affected_rows(conn) > 0) {
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
40 printf("time update successful\n");
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
41 printf("simulation time: %d\n", time);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
42 } else {
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
43 printf("E: time update failed\n");
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
44 }
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
45
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
46 }
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
47
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
48
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
49 int main(int argc, char* argv[]) {
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
50 int i;
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
51 char* gamename;
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
52
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
53 /* init */
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
54 if (argc != 2) {
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
55 printf("usage: %s <game>\n", argv[0]);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
56 exit(1);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
57 }
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
58 gamename = argv[1];
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
59
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
60 printf("gamename: %s\n", gamename);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
61
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
62 db_connect();
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
63
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
64 if (check_game(gamename) != 1) {
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
65 printf("game '%s' does not exist\n", gamename);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
66 exit(1);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
67 }
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
68
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
69 inc_time(gamename);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
70
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
71 /*
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
72 while ((row = mysql_fetch_row(result)) != NULL) {
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
73 for (i = 0; i < mysql_num_fields(result); i++) {
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
74 printf("%10s ", row[i]);
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
75 }
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
76 printf("\n");
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
77 }
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
78 */
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
79
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
80
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
81
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
82
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
83 db_close();
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
84
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
85 printf("the garten program\n");
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
86 return 0;
831599184108 inital commit
meillo@marmaro.de
parents:
diff changeset
87 }