www/includes/db_setup.php

Tue, 22 Jan 2019 22:46:58 +0100

author
Michiel Broek <mbroek@mbse.eu>
date
Tue, 22 Jan 2019 22:46:58 +0100
changeset 196
531d5458782f
parent 99
f433193f7bb6
child 289
4082c41f45e9
permissions
-rw-r--r--

Hops database bool to int types. Dropdown lists are using tables with indexes. Dropdown lists display in Dutch. Save and delete in the database now use POST instead of GET. Removed the useat field. Redesigned the web page. Code cleanup.

<?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" );

$escapers = array("\\", "/", "\"", "\n", "\r", "\t", "\x08", "\x0c");
$replacements = array("\\\\", "\\/", "\\\"", "\\n", "\\r", "\\t", "\\f", "\\b");

$query = "SELECT * FROM profile_setup WHERE record='1'";

if (isset($_POST['update'])) {
	/* Search water record */
	$result = mysqli_query($connect, "SELECT record FROM inventory_waters WHERE name='".$_POST['default_water']."';");
	if ($row = mysqli_fetch_array($result, MYSQLI_ASSOC))
		$default_water = $row['record'];
	else
		$default_water = 0;
	$sql = "UPDATE `profile_setup` SET ";
	$sql .=    "brewery_name='" . mysqli_real_escape_string($connect, $_POST['brewery_name']);
	$sql .= "', factor_mashhop='" . $_POST['factor_mashhop'];
	$sql .= "', factor_fwh='" . $_POST['factor_fwh'];
	$sql .= "', factor_pellet='" . $_POST['factor_pellet'];
	$sql .= "', factor_plug='" . $_POST['factor_plug'];
	$sql .= "', color_method='" . mysqli_real_escape_string($connect, $_POST['color_method']);
	$sql .= "', ibu_method='" . mysqli_real_escape_string($connect, $_POST['ibu_method']);
	$sql .= "', brix_correction='" . $_POST['brix_correction'];
	$sql .= "', grain_absorbtion='" . $_POST['grain_absorbtion'];
	$sql .= "', default_water='" . $default_water;
	$sql .= "' WHERE record='1';";
//	syslog(LOG_NOTICE, $sql);
	$result = mysqli_query($connect, $sql);
	if (! $result) {
		syslog(LOG_NOTICE, "db_profile_setup: ".$sql." result: ".mysqli_error($connect));
	} else {
		syslog(LOG_NOTICE, "db_profile_setup: updated record 1");
	}
	echo $result;
} else {
	$result = mysqli_query($connect, $query) or die("SQL Error 1: " . mysqli_error($connect));
	if ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
		/* search water name */
		$wresult = mysqli_query($connect, "SELECT name FROM inventory_waters WHERE record='".$row['default_water']."';");
		if ($wrow = mysqli_fetch_array($wresult, MYSQLI_ASSOC))
			$default_water = $wrow['name'];
		else
			$default_water = '';
		$data  = '{"record":' . $row['record'];
		$data .= ',"brewery_name":"' . str_replace($escapers, $replacements, $row['brewery_name']);
		$data .= '","factor_mashhop":' . $row['factor_mashhop'];
		$data .= ',"factor_fwh":' . $row['factor_fwh'];
		$data .= ',"factor_pellet":' . $row['factor_pellet'];
		$data .= ',"factor_plug":' . $row['factor_plug'];
		$data .= ',"ibu_method":"' . str_replace($escapers, $replacements, $row['ibu_method']);
		$data .= '","color_method":"' . str_replace($escapers, $replacements, $row['color_method']);
		$data .= '","brix_correction":' . floatval($row['brix_correction']);
		$data .= ',"grain_absorbtion":' . floatval($row['grain_absorbtion']);
		$data .= ',"default_water":"' . str_replace($escapers, $replacements, $default_water);
		$data .= '"}';
	}
	header("Content-type: application/json");
	echo $data;
}
?>

mercurial