www/includes/db_inventory_suppliers.php

Tue, 31 Aug 2021 20:48:37 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Tue, 31 Aug 2021 20:48:37 +0200
changeset 774
92e1e8f175a2
parent 767
08c0343b622b
child 785
aa79acfdf8a9
permissions
-rw-r--r--

Split batch, adjust mash step volume. In the duplicated log_brew handle the missing values. In save product, round the mash step sg to 4 decimals. In prod_edit, ingredients are stored as strings, not arrays. This triggered a memory corruption that only happened in rare circumstances. Don't fix mash step fields in the javascript, it is already done during load from the database. Calculation of the mash volume is rounded to 6 decimals. Enter mash step Brix/Plato value, the SG result is rounded to 4 decimals.

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 ?>

mercurial