www/upl_yeasts.php

changeset 311
f6fafccd8a6d
child 785
aa79acfdf8a9
equal deleted inserted replaced
310:b316b88ebe12 311:f6fafccd8a6d
1 <?php
2 require_once('config.php');
3 require("version.php");
4 require("includes/formulas.php");
5
6
7 $target_dir = "tmp/";
8 $target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
9 $uploadOk = 1;
10 $imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
11
12 // Check if file already exists
13 if (file_exists($target_file)) {
14 echo "Fout 1: bestand bestaat al. ";
15 $uploadOk = 0;
16 }
17 // Check file size
18 if ($_FILES["fileToUpload"]["size"] > 500000 && $uploadOk) {
19 echo "Fout 2: het bestand is te groot. ";
20 $uploadOk = 0;
21 }
22 // Allow certain file formats
23 if ($imageFileType != "xml" && $uploadOk) {
24 echo "Fout 3: alleen XML bestanden toegestaan. ";
25 $uploadOk = 0;
26 }
27 // Check if $uploadOk is set to 0 by an error
28 if ($uploadOk == 0) {
29 exit;
30 }
31
32 if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
33 echo "Verwerken bestand ". basename( $_FILES["fileToUpload"]["name"]). "<br />";
34 } else {
35 echo "Fout 4: er ging iets fout met de upload.";
36 exit;
37 }
38
39
40 $db = mysqli_connect(DBASE_HOST, DBASE_USER, DBASE_PASS, DBASE_NAME);
41 if (! $db) {
42 echo "Fout 5: ".mysqli_connect_errno()." ".mysqli_connect_error();
43 exit;
44 }
45 mysqli_set_charset($db, "utf8" );
46 date_default_timezone_set('Europe/Amsterdam');
47
48
49 $imported = 0;
50 $yeasts = simplexml_load_file($target_file);
51
52 foreach ($yeasts->YEAST as $yeast) {
53
54 $sql = "INSERT INTO inventory_yeasts SET name='" . mysqli_real_escape_string($db, $yeast->NAME);
55
56 if ($yeast->TYPE == 'Lager')
57 $sql .= "', type='0";
58 else if ($yeast->TYPE == 'Ale')
59 $sql .= "', type='1";
60 else if ($yeast->TYPE == 'Wheat')
61 $sql .= "', type='2";
62 else if ($yeast->TYPE == 'Wine')
63 $sql .= "', type='3";
64 else if ($yeast->TYPE == 'Champagne')
65 $sql .= "', type='4";
66 else
67 echo "Unknown TYPE " . $yeast->TYPE . "<br />";
68
69 if ($yeast->FORM == 'Liquid')
70 $sql .= "', form='0";
71 else if ($yeast->FORM == 'Dry')
72 $sql .= "', form='1";
73 else if ($yeast->FORM == 'Slant')
74 $sql .= "', form='2";
75 else if ($yeast->FORM == 'Culture')
76 $sql .= "', form='3";
77 else if ($yeast->FORM == 'Frozen')
78 $sql .= "', form='4";
79 else if ($yeast->FORM == 'Bottle')
80 $sql .= "', form='5";
81 else
82 echo "Unknown FORM " . $yeast->FORM . "<br />";
83
84 $sql .= "', laboratory='" . mysqli_real_escape_string($db, $yeast->LABORATORY);
85 $sql .= "', product_id='" . mysqli_real_escape_string($db, $yeast->PRODUCT_ID);
86 if ($yeast->MIN_TEMPERATURE)
87 $sql .= "', min_temperature='" . floatval($yeast->MIN_TEMPERATURE);
88 if ($yeast->MAX_TEMPERATURE)
89 $sql .= "', max_temperature='" . floatval($yeast->MAX_TEMPERATURE);
90
91 if ($yeast->FLOCCULATION == 'Low')
92 $sql .= "', flocculation='0";
93 else if ($yeast->FLOCCULATION == 'Medium')
94 $sql .= "', flocculation='1";
95 else if ($yeast->FLOCCULATION == 'High')
96 $sql .= "', flocculation='2";
97 else if ($yeast->FLOCCULATION == 'Very high')
98 $sql .= "', flocculation='3";
99 else
100 echo "Unknown FLOCCULATION " . $yeast->FLOCCULATION . PHP_EOL;
101
102 if ($yeast->ATTENUATION)
103 $sql .= "', attenuation='" . floatval($yeast->ATTENUATION);
104 $sql .= "', notes='" . mysqli_real_escape_string($db, $yeast->NOTES);
105 $sql .= "', best_for='" . mysqli_real_escape_string($db, $yeast->BEST_FOR);
106 if ($yeast->MAX_REUSE)
107 $sql .= "', max_reuse='" . $yeast->MAX_REUSE;
108
109 if ($yeast->FORM == 'Liquid') {
110 if ($yeast->LABORATORY == 'Imperial Yeast')
111 $sql .= "', cells='200000000000"; // 200 billion cells per pack
112 else
113 $sql .= "', cells='100000000000"; // 100 billion cells per pack
114 if ($yeast->COST)
115 $sql .= "', cost='" . floatval($yeast->COST);
116 if ($yeast->INVENTORY)
117 $sql .= "', inventory='" . floatval($yeast->INVENTORY);
118 } else if ($yeast->FORM == 'Dry') {
119 $sql .= "', cells='15000000000"; // 6..15 billion per gram
120 if ($yeast->INVENTORY)
121 $sql .= "', inventory='" . floatval($yeast->INVENTORY) / 1000.0; // To kg
122 if ($yeast->COST)
123 $sql .= "', cost='" . floatval($yeast->COST) * 1000.0; // to Euro/kg
124 } else {
125 $sql .= "', cells='1700000000"; // 1.7 billion cells per ml.
126 if ($yeast->INVENTORY)
127 $sql .= "', inventory='" . floatval($yeast->INVENTORY) / 1000.0; // To liter
128 if ($yeast->COST)
129 $sql .= "', cost='" . floatval($yeast->COST) * 1000.0; // to Euro/liter
130 }
131 if ($yeast->CULTURE_DATE) {
132 $date = substr($yeast->CULTURE_DATE, 6, 4) . '-' . substr($yeast->CULTURE_DATE, 3, 2) . '-' . substr($yeast->CULTURE_DATE, 0, 2);
133 $sql .= "', production_date='" . $date;
134 }
135 $sql .= "';";
136 if (! $result = mysqli_query($db, $sql)) {
137 echo "Fout 8: " . mysqli_error($db) . "<br />";
138 } else {
139 echo "+ " . $yeast->NAME . "<br />";
140 $imported++;
141 }
142 }
143
144 if ($imported == 0) {
145 echo "Fout 7: geen gisten in dit bestand.<br />";
146 } else {
147 echo $imported . " gisten toegevoegd.<br />";
148 }
149
150
151
152 // Don't clutter the upload directory.
153 unlink($target_file);
154
155 ?>

mercurial