10 if ( $DB = mysql_connect('localhost','dokodb', 'doko') )
11 mysql_select_db('doko') or die('Could not select database');
25 function DB_quote_smart($value)
28 if (get_magic_quotes_gpc()) {
29 $value = stripslashes($value);
31 /* Quote if not a number or a numeric string */
32 if (!is_numeric($value)) {
33 $value = "'" . mysql_real_escape_string($value) . "'";
41 $result = mysql_query("SELECT * FROM user");
42 while($r = mysql_fetch_array($result,MYSQL_NUM))
51 function DB_get_email_by_name($name)
53 echo "*looking for $name*";
54 $result = mysql_query("SELECT email FROM user WHERE fullname=".DB_quote_smart($name)."");
55 $r = mysql_fetch_array($result,MYSQL_NUM);
63 function DB_get_userid_by_name($name)
65 $result = mysql_query("SELECT id FROM user WHERE fullname=".DB_quote_smart($name));
66 $r = mysql_fetch_array($result,MYSQL_NUM);
73 function DB_get_userid_by_passwd($passwd)
75 $result = mysql_query("SELECT id FROM user WHERE password=".DB_quote_smart($passwd));
76 $r = mysql_fetch_array($result,MYSQL_NUM);
83 function DB_get_userid_by_email($email)
85 $result = mysql_query("SELECT id FROM user WHERE email=".DB_quote_smart($email));
86 $r = mysql_fetch_array($result,MYSQL_NUM);
94 function DB_get_handid_by_hash($hash)
96 $result = mysql_query("SELECT id FROM hand WHERE hash=".DB_quote_smart($hash));
97 $r = mysql_fetch_array($result,MYSQL_NUM);
105 function DB_get_userid_by_hash($hash)
107 $result = mysql_query("SELECT user_id FROM hand WHERE hash=".DB_quote_smart($hash));
108 $r = mysql_fetch_array($result,MYSQL_NUM);
116 function DB_get_pos_by_hash($hash)
118 $result = mysql_query("SELECT position FROM hand WHERE hash=".DB_quote_smart($hash));
119 $r = mysql_fetch_array($result,MYSQL_NUM);
127 function DB_get_name_by_hash($hash)
129 $result = mysql_query("SELECT fullname FROM hand LEFT JOIN user ON hand.user_id=user.id WHERE hash=".DB_quote_smart($hash));
130 $r = mysql_fetch_array($result,MYSQL_NUM);
138 function DB_get_status_by_hash($hash)
140 $result = mysql_query("SELECT status FROM hand WHERE hash=".DB_quote_smart($hash));
141 $r = mysql_fetch_array($result,MYSQL_NUM);
149 function DB_set_hand_status_by_hash($hash,$status)
151 mysql_query("UPDATE hand SET status='".$status."' WHERE hash=".DB_quote_smart($hash));
155 function DB_get_gameid_by_hash($hash)
157 $result = mysql_query("SELECT game_id FROM hand WHERE hash=".DB_quote_smart($hash));
158 $r = mysql_fetch_array($result,MYSQL_NUM);
166 function DB_cancel_game($hash)
168 $gameid = DB_get_gameid_by_hash($me);
173 /* get the IDs of all players */
174 $result = mysql_query("SELECT id FROM hand WHERE game_id=".DB_quote_smart($gameid));
175 while($r = mysql_fetch_array($result,MYSQL_NUM))
179 $tmp = mysql_query("SELECT id FROM hand_card WHERE hand_id=".DB_quote_smart($id));
180 $tmp = mysql_fetch_array($tmp,MYSQL_NUM);
181 mysql_query("DELETE FROM play WHERE hand_card_id=".DB_quote_smart($tmp[0]));
184 mysql_query("DELETE FROM hand_card WHERE hand_id=".DB_quote_smart($id));
185 mysql_query("DELETE FROM score WHERE hand_id=".DB_quote_smart($id));
186 mysql_query("DELETE FROM hand WHERE id=".DB_quote_smart($id));
190 mysql_query("DELETE FROM user_game_prefs WHERE game_id=".DB_quote_smart($gameid));
191 mysql_query("DELETE FROM trick WHERE game_id=".DB_quote_smart($gameid));
192 mysql_query("DELETE FROM game WHERE id=".DB_quote_smart($gameid));
197 function DB_get_hand($me)
201 $handid = DB_get_handid_by_hash($me);
203 $result = mysql_query("SELECT card_id FROM hand_card WHERE hand_id=".DB_quote_smart($handid)." and played='false' ");
204 while($r = mysql_fetch_array($result,MYSQL_NUM))
210 function DB_set_solo_by_hash($me,$solo)
212 mysql_query("UPDATE hand SET solo=".DB_quote_smart($solo)." WHERE hash=".DB_quote_smart($hash));
216 function DB_set_sickness_by_hash($me,$sickness)
218 mysql_query("UPDATE hand SET sickness=".DB_quote_smart($sickness)." WHERE hash=".DB_quote_smart($hash));
222 function DB_get_current_trickid($gameid)
224 $result = mysql_query("SELECT trick.id,MAX(play.sequence) FROM play ".
225 "LEFT JOIN trick ON play.trick_id=trick.id ".
226 "WHERE trick.game_id=".DB_quote_smart($gameid)." ".
227 "GROUP BY trick.id");
228 while( $r = mysql_fetch_array($result,MYSQL_NUM) )
234 if(!$sequence || $sequence==4)
236 mysql_query("INSERT INTO trick VALUES (NULL,NULL,NULL, ".DB_quote_smart($gameid).")");
237 $trickid = mysql_insert_id();
245 return array($trickid,$sequence);
248 function DB_get_max_trickid($gameid)
250 $result = mysql_query("SELECT MAX(id) FROM trick WHERE game_id=".DB_quote_smart($gameid));
251 $r = mysql_fetch_array($result,MYSQL_NUM) ;
254 return ($r?$r[0]:NULL);
257 function DB_play_card($trickid,$handcardid,$sequence)
259 mysql_query("INSERT into play VALUES(NULL,NULL,NULL,".DB_quote_smart($trickid).
260 ",".DB_quote_smart($handcardid).",".DB_quote_smart($sequence).")");