@@ -22,8 +22,11 @@ public static function logEvent(
22
22
if (!isset (Common::$ database )) {
23
23
Common::$ database = DatabaseDriver::getDatabaseObject ();
24
24
}
25
+
25
26
$ successful = false ;
27
+
26
28
try {
29
+
27
30
$ stmt = Common::$ database ->prepare ('
28
31
INSERT INTO `event_log` (
29
32
`event_type_id`, `event_datetime`, `user_id`, `ip_address`,
@@ -32,14 +35,24 @@ public static function logEvent(
32
35
:event_type_id, NOW(), :user_id, :ip_address, :meta_data
33
36
);
34
37
' );
38
+
35
39
$ stmt ->bindParam (':event_type_id ' , $ event_type_id , PDO ::PARAM_INT );
36
- $ stmt ->bindParam (':user_id ' , $ user_id , PDO ::PARAM_INT );
37
- $ stmt ->bindParam (':ip_address ' , $ ip_address , PDO ::PARAM_STR );
38
- $ stmt ->bindParam (':meta_data ' , $ meta_data , PDO ::PARAM_STR );
40
+
41
+ $ t = (is_null ($ user_id ) ? PDO ::PARAM_NULL : PDO ::PARAM_INT );
42
+ $ stmt ->bindParam (':user_id ' , $ user_id , $ t );
43
+
44
+ $ t = (is_null ($ ip_address ) ? PDO ::PARAM_NULL : PDO ::PARAM_STR );
45
+ $ stmt ->bindParam (':ip_address ' , $ ip_address , $ t );
46
+
47
+ $ t = (is_null ($ meta_data ) ? PDO ::PARAM_NULL : PDO ::PARAM_STR );
48
+ $ stmt ->bindParam (':meta_data ' , $ meta_data , $ t );
49
+
39
50
$ successful = $ stmt ->execute ();
40
51
$ stmt ->closeCursor ();
52
+
41
53
} catch (PDOException $ e ) {
42
54
throw new QueryException ('Cannot log event ' , $ e );
55
+
43
56
} finally {
44
57
return $ successful ;
45
58
}
0 commit comments