Sun, 11 Jul 2021 15:55:44 +0200
More efficient code for get*sources.php form dropdown lists.
10
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
1 | <?php |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
2 | |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
3 | require($_SERVER['DOCUMENT_ROOT']."/config.php"); |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
4 | require($_SERVER['DOCUMENT_ROOT']."/version.php"); |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
5 | |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
6 | #Connect to the database |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
7 | $connect = mysqli_connect(DBASE_HOST, DBASE_USER, DBASE_PASS, DBASE_NAME); |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
8 | if (! $connect) { |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
9 | die('Connect Error (' . mysqli_connect_errno() . ') ' . mysqli_connect_error()); |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
10 | } |
77
a9f8de2d7b2b
Fixed most charset problems. Added fpdf library. Added inventory pdf creation.
Michiel Broek <mbroek@mbse.eu>
parents:
64
diff
changeset
|
11 | mysqli_set_charset($connect, "utf8" ); |
10
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
12 | |
767
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
13 | $response = array( |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
14 | 'error' => false, |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
15 | 'msg' => 'Ok', |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
16 | ); |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
17 | |
10
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
18 | // get data and store in a json array |
64
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
19 | $query = "SELECT * FROM inventory_suppliers ORDER BY name"; |
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
20 | if (isset($_POST['insert'])) { |
10
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
21 | // INSERT COMMAND |
64
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
22 | $sql = "INSERT INTO `inventory_suppliers` SET name='" . mysqli_real_escape_string($connect, $_POST['name']); |
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
23 | $sql .= "', address='" . mysqli_real_escape_string($connect, $_POST['address']); |
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
24 | $sql .= "', city='" . mysqli_real_escape_string($connect, $_POST['city']); |
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
25 | $sql .= "', zip='" . mysqli_real_escape_string($connect, $_POST['zip']); |
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
26 | $sql .= "', country='" . mysqli_real_escape_string($connect, $_POST['country']); |
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
27 | $sql .= "', website='" . mysqli_real_escape_string($connect, $_POST['website']); |
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
28 | $sql .= "', email='" . mysqli_real_escape_string($connect, $_POST['email']); |
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
29 | $sql .= "', phone='" . mysqli_real_escape_string($connect, $_POST['phone']); |
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
30 | $sql .= "', notes='" . mysqli_real_escape_string($connect, $_POST['notes']); |
10
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
31 | $sql .= "';"; |
18
395833e20f88
Better error messages in syslog
Michiel Broek <mbroek@mbse.eu>
parents:
10
diff
changeset
|
32 | $result = mysqli_query($connect, $sql); |
395833e20f88
Better error messages in syslog
Michiel Broek <mbroek@mbse.eu>
parents:
10
diff
changeset
|
33 | if (! $result) { |
395833e20f88
Better error messages in syslog
Michiel Broek <mbroek@mbse.eu>
parents:
10
diff
changeset
|
34 | syslog(LOG_NOTICE, "db_inventory_suppliers: ".$sql." result: ".mysqli_error($connect)); |
767
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
35 | $response['error'] = true; |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
36 | $response['msg'] = "SQL fout: ".mysqli_error($connect); |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
37 | } |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
38 | exit(json_encode($response)); |
10
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
39 | |
64
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
40 | } else if (isset($_POST['update'])) { |
10
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
41 | // UPDATE COMMAND |
64
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
42 | $sql = "UPDATE `inventory_suppliers` SET name='" . mysqli_real_escape_string($connect, $_POST['name']); |
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
43 | $sql .= "', address='" . mysqli_real_escape_string($connect, $_POST['address']); |
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
44 | $sql .= "', city='" . mysqli_real_escape_string($connect, $_POST['city']); |
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
45 | $sql .= "', zip='" . mysqli_real_escape_string($connect, $_POST['zip']); |
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
46 | $sql .= "', country='" . mysqli_real_escape_string($connect, $_POST['country']); |
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
47 | $sql .= "', website='" . mysqli_real_escape_string($connect, $_POST['website']); |
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
48 | $sql .= "', email='" . mysqli_real_escape_string($connect, $_POST['email']); |
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
49 | $sql .= "', phone='" . mysqli_real_escape_string($connect, $_POST['phone']); |
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
50 | $sql .= "', notes='" . mysqli_real_escape_string($connect, $_POST['notes']); |
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
51 | $sql .= "' WHERE record='" . $_POST['record'] . "';"; |
18
395833e20f88
Better error messages in syslog
Michiel Broek <mbroek@mbse.eu>
parents:
10
diff
changeset
|
52 | $result = mysqli_query($connect, $sql); |
395833e20f88
Better error messages in syslog
Michiel Broek <mbroek@mbse.eu>
parents:
10
diff
changeset
|
53 | if (! $result) { |
395833e20f88
Better error messages in syslog
Michiel Broek <mbroek@mbse.eu>
parents:
10
diff
changeset
|
54 | syslog(LOG_NOTICE, "db_inventory_suppliers: ".$sql." result: ".mysqli_error($connect)); |
767
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
55 | $response['error'] = true; |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
56 | $response['msg'] = "SQL fout: ".mysqli_error($connect); |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
57 | } |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
58 | exit(json_encode($response)); |
10
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
59 | |
64
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
60 | } else if (isset($_POST['delete'])) { |
10
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
61 | // DELETE COMMAND |
64
5d5fc6f7cbfe
Improved recipes import. Finished inventory_suppliers.
Michiel Broek <mbroek@mbse.eu>
parents:
18
diff
changeset
|
62 | $sql = "DELETE FROM `inventory_suppliers` WHERE record='".$_POST['record']."';"; |
18
395833e20f88
Better error messages in syslog
Michiel Broek <mbroek@mbse.eu>
parents:
10
diff
changeset
|
63 | $result = mysqli_query($connect, $sql); |
395833e20f88
Better error messages in syslog
Michiel Broek <mbroek@mbse.eu>
parents:
10
diff
changeset
|
64 | if (! $result) { |
395833e20f88
Better error messages in syslog
Michiel Broek <mbroek@mbse.eu>
parents:
10
diff
changeset
|
65 | syslog(LOG_NOTICE, "db_inventory_suppliers: ".$sql." result: ".mysqli_error($connect)); |
767
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
66 | $response['error'] = true; |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
67 | $response['msg'] = "SQL fout: ".mysqli_error($connect); |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
68 | } |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
69 | exit(json_encode($response)); |
10
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
70 | |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
71 | } else { |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
72 | // SELECT COMMAND |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
73 | $result = mysqli_query($connect, $query) or die("SQL Error 1: " . mysqli_error($connect)); |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
74 | while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) { |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
75 | $suppliers[] = array( |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
76 | 'record' => $row['record'], |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
77 | 'name' => $row['name'], |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
78 | 'address' => $row['address'], |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
79 | 'city' => $row['city'], |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
80 | 'zip' => $row['zip'], |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
81 | 'country' => $row['country'], |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
82 | 'website' => $row['website'], |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
83 | 'email' => $row['email'], |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
84 | 'phone' => $row['phone'], |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
85 | 'notes' => $row['notes'] |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
86 | ); |
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
87 | } |
296
69fadd1aded2
Updated design document. Add content header application/json to all scripts that produce json output. Chart prints show the beer code and name in the header. Charts don't display the menu anymore.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
88 | header("Content-type: application/json"); |
767
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
89 | exit(json_encode($suppliers)); |
10
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
90 | } |
767
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
91 | |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
92 | syslog(LOG_NOTICE, "db_inventory_suppliers: missing arguments"); |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
93 | $response['error'] = true; |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
94 | $response['msg'] = "missing arguments"; |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
95 | echo json_encode($response); |
08c0343b622b
Improved error handling for inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts.
Michiel Broek <mbroek@mbse.eu>
parents:
715
diff
changeset
|
96 | |
10
606b4af8f918
Start of the merge with another unfinished project
Michiel Broek <mbroek@mbse.eu>
parents:
diff
changeset
|
97 | ?> |