Sat, 06 Aug 2022 21:15:21 +0200
Packagig is now a viewer.
28 | 1 | <?php |
2 | ||
3 | require($_SERVER['DOCUMENT_ROOT']."/config.php"); | |
4 | require($_SERVER['DOCUMENT_ROOT']."/version.php"); | |
5 | ||
6 | #Connect to the database | |
7 | $connect = mysqli_connect(DBASE_HOST, DBASE_USER, DBASE_PASS, DBASE_NAME); | |
8 | if (! $connect) { | |
9 | die('Connect Error (' . mysqli_connect_errno() . ') ' . mysqli_connect_error()); | |
10 | } | |
77
a9f8de2d7b2b
Fixed most charset problems. Added fpdf library. Added inventory pdf creation.
Michiel Broek <mbroek@mbse.eu>
parents:
48
diff
changeset
|
11 | mysqli_set_charset($connect, "utf8" ); |
28 | 12 | |
768
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
13 | $response = array( |
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
14 | 'error' => false, |
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
15 | 'msg' => 'Ok', |
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
16 | ); |
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
17 | |
217
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
18 | if (isset($_POST['insert']) || isset($_POST['update'])) { |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
19 | if (isset($_POST['insert'])) { |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
20 | $sql = "INSERT INTO `profile_styles` SET "; |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
21 | } |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
22 | if (isset($_POST['update'])) { |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
23 | $sql = "UPDATE `profile_styles` SET "; |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
24 | } |
785
aa79acfdf8a9
Added uuid field in inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts. Added uuid field in profiles mash, styles and water.
Michiel Broek <mbroek@mbse.eu>
parents:
768
diff
changeset
|
25 | if (isset($_POST['uuid']) && (strlen($_POST['uuid']) == 36)) { |
aa79acfdf8a9
Added uuid field in inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts. Added uuid field in profiles mash, styles and water.
Michiel Broek <mbroek@mbse.eu>
parents:
768
diff
changeset
|
26 | $sql .= "uuid='" . $_POST['uuid']; |
aa79acfdf8a9
Added uuid field in inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts. Added uuid field in profiles mash, styles and water.
Michiel Broek <mbroek@mbse.eu>
parents:
768
diff
changeset
|
27 | } else { |
aa79acfdf8a9
Added uuid field in inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts. Added uuid field in profiles mash, styles and water.
Michiel Broek <mbroek@mbse.eu>
parents:
768
diff
changeset
|
28 | $uuid = str_replace("\n", "", file_get_contents('/proc/sys/kernel/random/uuid')); |
aa79acfdf8a9
Added uuid field in inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts. Added uuid field in profiles mash, styles and water.
Michiel Broek <mbroek@mbse.eu>
parents:
768
diff
changeset
|
29 | $sql .= "uuid='" . $uuid; |
aa79acfdf8a9
Added uuid field in inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts. Added uuid field in profiles mash, styles and water.
Michiel Broek <mbroek@mbse.eu>
parents:
768
diff
changeset
|
30 | } |
aa79acfdf8a9
Added uuid field in inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts. Added uuid field in profiles mash, styles and water.
Michiel Broek <mbroek@mbse.eu>
parents:
768
diff
changeset
|
31 | $sql .= "', name='" . mysqli_real_escape_string($connect, $_POST['name']); |
217
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
32 | $sql .= "', category='" . mysqli_real_escape_string($connect, $_POST['category']); |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
33 | $sql .= "', category_number='" . $_POST['category_number']; |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
34 | $sql .= "', style_letter='" . mysqli_real_escape_string($connect, $_POST['style_letter']); |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
35 | $sql .= "', style_guide='" . mysqli_real_escape_string($connect, $_POST['style_guide']); |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
36 | $sql .= "', type='" . $_POST['type']; |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
37 | $sql .= "', og_min='" . $_POST['og_min']; |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
38 | $sql .= "', og_max='" . $_POST['og_max']; |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
39 | $sql .= "', fg_min='" . $_POST['fg_min']; |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
40 | $sql .= "', fg_max='" . $_POST['fg_max']; |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
41 | $sql .= "', ibu_min='" . $_POST['ibu_min']; |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
42 | $sql .= "', ibu_max='" . $_POST['ibu_max']; |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
43 | $sql .= "', color_min='" . $_POST['color_min']; |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
44 | $sql .= "', color_max='" . $_POST['color_max']; |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
45 | $sql .= "', carb_min='" . $_POST['carb_min']; |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
46 | $sql .= "', carb_max='" . $_POST['carb_max']; |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
47 | $sql .= "', abv_min='" . $_POST['abv_min']; |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
48 | $sql .= "', abv_max='" . $_POST['abv_max']; |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
49 | $sql .= "', notes='" . mysqli_real_escape_string($connect, $_POST['notes']); |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
50 | $sql .= "', profile='" . mysqli_real_escape_string($connect, $_POST['profile']); |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
51 | $sql .= "', ingredients='" . mysqli_real_escape_string($connect, $_POST['ingredients']); |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
52 | $sql .= "', examples='" . mysqli_real_escape_string($connect, $_POST['examples']); |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
53 | if (isset($_POST['insert'])) { |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
54 | $sql .= "';"; |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
55 | } |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
56 | if (isset($_POST['update'])) { |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
57 | $sql .= "' WHERE record='" . $_POST['record'] . "';"; |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
58 | } |
28 | 59 | $result = mysqli_query($connect, $sql); |
60 | if (! $result) { | |
45
95251bedfab4
Moved three inventory tables and screens to profiles
Michiel Broek <mbroek@mbse.eu>
parents:
37
diff
changeset
|
61 | syslog(LOG_NOTICE, "db_profile_styles: ".$sql." result: ".mysqli_error($connect)); |
768
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
62 | $response['error'] = true; |
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
63 | $response['msg'] = "SQL fout: ".mysqli_error($connect); |
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
64 | } |
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
65 | exit(json_encode($response)); |
28 | 66 | |
217
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
67 | } else if (isset($_POST['delete'])) { |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
68 | // DELETE COMMAND |
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
69 | $sql = "DELETE FROM `profile_styles` WHERE record='".$_POST['record']."';"; |
28 | 70 | $result = mysqli_query($connect, $sql); |
71 | if (! $result) { | |
45
95251bedfab4
Moved three inventory tables and screens to profiles
Michiel Broek <mbroek@mbse.eu>
parents:
37
diff
changeset
|
72 | syslog(LOG_NOTICE, "db_profile_styles: ".$sql." result: ".mysqli_error($connect)); |
768
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
73 | $response['error'] = true; |
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
74 | $response['msg'] = "SQL fout: ".mysqli_error($connect); |
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
75 | } |
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
76 | exit(json_encode($response)); |
28 | 77 | |
78 | } else { | |
79 | // SELECT COMMAND | |
217
318aab371497
Profile style is using indexes. Profile styles and fermentation switched to POST. Standard edit screens.
Michiel Broek <mbroek@mbse.eu>
parents:
77
diff
changeset
|
80 | $query = "SELECT * FROM profile_styles ORDER BY style_guide,style_letter,name"; |
28 | 81 | $result = mysqli_query($connect, $query) or die("SQL Error 1: " . mysqli_error($connect)); |
82 | while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) { | |
83 | $styles[] = array( | |
84 | 'record' => $row['record'], | |
785
aa79acfdf8a9
Added uuid field in inventory equipments, fermentables, hops, miscs, suppliers, water and yeasts. Added uuid field in profiles mash, styles and water.
Michiel Broek <mbroek@mbse.eu>
parents:
768
diff
changeset
|
85 | 'uuid' => $row['uuid'], |
28 | 86 | 'name' => $row['name'], |
87 | 'category' => $row['category'], | |
88 | 'category_number' => $row['category_number'], | |
89 | 'style_letter' => $row['style_letter'], | |
90 | 'style_guide' => $row['style_guide'], | |
91 | 'type' => $row['type'], | |
92 | 'og_min' => $row['og_min'], | |
93 | 'og_max' => $row['og_max'], | |
94 | 'fg_min' => $row['fg_min'], | |
95 | 'fg_max' => $row['fg_max'], | |
96 | 'ibu_min' => $row['ibu_min'], | |
97 | 'ibu_max' => $row['ibu_max'], | |
98 | 'color_min' => $row['color_min'], | |
99 | 'color_max' => $row['color_max'], | |
100 | 'carb_min' => $row['carb_min'], | |
101 | 'carb_max' => $row['carb_max'], | |
102 | 'abv_min' => $row['abv_min'], | |
103 | 'abv_max' => $row['abv_max'], | |
104 | 'notes' => $row['notes'], | |
105 | 'profile' => $row['profile'], | |
106 | 'ingredients' => $row['ingredients'], | |
107 | 'examples' => $row['examples'] | |
108 | ); | |
109 | } | |
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:
217
diff
changeset
|
110 | header("Content-type: application/json"); |
768
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
111 | exit(json_encode($styles)); |
28 | 112 | } |
768
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
113 | |
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
114 | syslog(LOG_NOTICE, "db_profile_styles: missing arguments"); |
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
115 | $response['error'] = true; |
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
116 | $response['msg'] = "missing arguments"; |
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
117 | echo json_encode($response); |
ae1195153fa2
Better error reporting in profiles fermentation steps, mash profiles, beer styles, water profiles and general setup.
Michiel Broek <mbroek@mbse.eu>
parents:
716
diff
changeset
|
118 | |
28 | 119 | ?> |