Wed, 23 Oct 2019 14:20:50 +0200
Added the product divide scripts. All parts have all the volumes and weights divided, including the master record. Splitted batches have their own records with the product code formatted as code-n. From this design, we can rebuild the print and checklist.
<?php require($_SERVER['DOCUMENT_ROOT']."/config.php"); require($_SERVER['DOCUMENT_ROOT']."/version.php"); #Connect to the database $connect = mysqli_connect(DBASE_HOST, DBASE_USER, DBASE_PASS, DBASE_NAME); if (! $connect) { die('Connect Error (' . mysqli_connect_errno() . ') ' . mysqli_connect_error()); } mysqli_set_charset($connect, "utf8" ); if (isset($_POST['insert']) || isset($_POST['update'])) { if (isset($_POST['insert'])) { $sql = "INSERT INTO `profile_styles` SET "; } if (isset($_POST['update'])) { $sql = "UPDATE `profile_styles` SET "; } $sql .= "name='" . mysqli_real_escape_string($connect, $_POST['name']); $sql .= "', category='" . mysqli_real_escape_string($connect, $_POST['category']); $sql .= "', category_number='" . $_POST['category_number']; $sql .= "', style_letter='" . mysqli_real_escape_string($connect, $_POST['style_letter']); $sql .= "', style_guide='" . mysqli_real_escape_string($connect, $_POST['style_guide']); $sql .= "', type='" . $_POST['type']; $sql .= "', og_min='" . $_POST['og_min']; $sql .= "', og_max='" . $_POST['og_max']; $sql .= "', fg_min='" . $_POST['fg_min']; $sql .= "', fg_max='" . $_POST['fg_max']; $sql .= "', ibu_min='" . $_POST['ibu_min']; $sql .= "', ibu_max='" . $_POST['ibu_max']; $sql .= "', color_min='" . $_POST['color_min']; $sql .= "', color_max='" . $_POST['color_max']; $sql .= "', carb_min='" . $_POST['carb_min']; $sql .= "', carb_max='" . $_POST['carb_max']; $sql .= "', abv_min='" . $_POST['abv_min']; $sql .= "', abv_max='" . $_POST['abv_max']; $sql .= "', notes='" . mysqli_real_escape_string($connect, $_POST['notes']); $sql .= "', profile='" . mysqli_real_escape_string($connect, $_POST['profile']); $sql .= "', ingredients='" . mysqli_real_escape_string($connect, $_POST['ingredients']); $sql .= "', examples='" . mysqli_real_escape_string($connect, $_POST['examples']); if (isset($_POST['insert'])) { $sql .= "';"; } if (isset($_POST['update'])) { $sql .= "' WHERE record='" . $_POST['record'] . "';"; } $result = mysqli_query($connect, $sql); if (! $result) { syslog(LOG_NOTICE, "db_profile_styles: ".$sql." result: ".mysqli_error($connect)); } else { if (isset($_POST['update'])) { syslog(LOG_NOTICE, "db_profile_styles: updated record ".$_POST['record']); } else { $lastid = mysqli_insert_id($connect); syslog(LOG_NOTICE, "db_profile_styles: inserted record ".$lastid); } } echo $result; } else if (isset($_POST['delete'])) { // DELETE COMMAND $sql = "DELETE FROM `profile_styles` WHERE record='".$_POST['record']."';"; $result = mysqli_query($connect, $sql); if (! $result) { syslog(LOG_NOTICE, "db_profile_styles: ".$sql." result: ".mysqli_error($connect)); } else { syslog(LOG_NOTICE, "db_profile_styles: deleted record ".$_POST['record']); } echo $result; } else { // SELECT COMMAND $query = "SELECT * FROM profile_styles ORDER BY style_guide,style_letter,name"; $result = mysqli_query($connect, $query) or die("SQL Error 1: " . mysqli_error($connect)); while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) { $styles[] = array( 'record' => $row['record'], 'name' => $row['name'], 'category' => $row['category'], 'category_number' => $row['category_number'], 'style_letter' => $row['style_letter'], 'style_guide' => $row['style_guide'], 'type' => $row['type'], 'og_min' => $row['og_min'], 'og_max' => $row['og_max'], 'fg_min' => $row['fg_min'], 'fg_max' => $row['fg_max'], 'ibu_min' => $row['ibu_min'], 'ibu_max' => $row['ibu_max'], 'color_min' => $row['color_min'], 'color_max' => $row['color_max'], 'carb_min' => $row['carb_min'], 'carb_max' => $row['carb_max'], 'abv_min' => $row['abv_min'], 'abv_max' => $row['abv_max'], 'notes' => $row['notes'], 'profile' => $row['profile'], 'ingredients' => $row['ingredients'], 'examples' => $row['examples'] ); } header("Content-type: application/json"); echo json_encode($styles); } ?>