· 7 years ago · Oct 07, 2018, 11:40 PM
1<?php
2$username = $_SESSION['username'];
3include('dbcon.php');
4if (isset($_POST['req'])) {
5
6 $query = "SELECT requested FROM users WHERE username='$username' ";
7 $result = mysqli_query($db, $query);
8 $row = mysqli_fetch_array($result);
9 if(empty($row['requested'])) {
10
11 $request = mysqli_real_escape_string($db, $_POST['request']);
12 $query = "INSERT INTO requests (username, airid)
13 VALUES('$username', '$request')";
14
15 mysqli_query($db, $query);
16
17 $query2 = "UPDATE users SET requested='1' WHERE username='$username'";
18 mysqli_query($db, $query2);
19
20
21 echo '<script>swal({title: "Great!", text: "We will process your request as soon as possible!", type: "success", buttonsStyling: false, heightAuto: false}).then(function(){ location.reload();});</script';
22
23 } else {
24
25 echo '<script>swal({title: "Whoa!", text: "You must wait 48 hours before requesting again!", type: "error", buttonsStyling: false, heightAuto: false}).then(function(){ location.reload();});</script';
26}
27}
28?>
29
30DROP TABLE IF EXISTS my_table;
31
32CREATE TABLE my_table
33(id SERIAL PRIMARY KEY
34,user_id INT NOT NULL
35,dt DATETIME NOT NULL
36);
37
38INSERT INTO my_table (user_id,dt) VALUES (101,NOW());
39Query OK, 1 row affected (0.00 sec)
40
41SELECT * FROM my_table;
42+----+---------+---------------------+
43| id | user_id | dt |
44+----+---------+---------------------+
45| 1 | 101 | 2018-10-07 23:21:44 |
46+----+---------+---------------------+
471 row in set (0.00 sec)
48
49INSERT INTO my_table (user_id,dt)
50SELECT 101,NOW()
51 FROM (SELECT 1) x
52 LEFT
53 JOIN my_table y
54 ON y.user_id = 101
55 AND y.dt >= NOW() - INTERVAL 60 SECOND
56 WHERE y.id IS NULL;
57Query OK, 1 row affected (0.00 sec)
58Records: 1 Duplicates: 0 Warnings: 0
59
60SELECT * FROM my_table;
61+----+---------+---------------------+
62| id | user_id | dt |
63+----+---------+---------------------+
64| 1 | 101 | 2018-10-07 23:21:44 |
65| 2 | 101 | 2018-10-07 23:23:39 |
66+----+---------+---------------------+
672 rows in set (0.00 sec)
68
69INSERT INTO my_table (user_id,dt)
70SELECT 101,NOW()
71 FROM (SELECT 1) x
72 LEFT
73 JOIN my_table y
74 ON y.user_id = 101
75 AND y.dt >= NOW() - INTERVAL 60 SECOND
76 WHERE y.id IS NULL;
77Query OK, 0 rows affected (0.00 sec)
78
79SELECT * FROM my_table;
80+----+---------+---------------------+
81| id | user_id | dt |
82+----+---------+---------------------+
83| 1 | 101 | 2018-10-07 23:21:44 |
84| 2 | 101 | 2018-10-07 23:23:39 |
85+----+---------+---------------------+
862 rows in set (0.00 sec)