Advertisement
Guest User

Untitled

a guest
Apr 27th, 2017
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.26 KB | None | 0 0
  1. <?php
  2. date_default_timezone_set('Europe/Bratislava');
  3.  
  4. function vypis_select($zac, $kon, $default = 0) {
  5. for($i = $zac; $i <= $kon; $i++) {
  6. echo "<option value='$i'";
  7. if ($i == $default) echo ' selected';
  8. echo ">$i</option>\n";
  9. }
  10. }
  11.  
  12. function hlavicka($nadpis) {
  13. ?>
  14. <!DOCTYPE html>
  15. <html>
  16. <head>
  17. <meta charset="utf-8">
  18. <title><?php echo $nadpis; ?></title>
  19. <link href="styly.css" rel="stylesheet">
  20. </head>
  21.  
  22. <body>
  23.  
  24. <header>
  25. <h1><?php echo $nadpis; ?></h1>
  26. </header>
  27. <?php
  28. }
  29.  
  30. function vypis_select_kytice($default = 0) {
  31. global $mysqli;
  32. if (!$mysqli->connect_errno) {
  33. $sql = "SELECT * FROM kvety_tovar WHERE na_sklade > 0 ORDER BY nazov ASC"; // definuj dopyt
  34. if ($result = $mysqli->query($sql)) { // vykonaj dopyt
  35. // dopyt sa podarilo vykonať
  36. while ($row = $result->fetch_assoc()) {
  37. echo "<option value='" . $row['kod'] . "'";
  38. if ($row['kod'] == $default) echo ' selected';
  39. echo '>' . $row['nazov'] . ' (' . $row['cena'] . " &euro;)</option>\n";
  40. }
  41. $result->free();
  42. }
  43. }
  44. }
  45.  
  46. /* kontroluje meno (meno a priezvisko)
  47. vráti TRUE, ak celé meno ($m) obsahuje práve 1 medzeru, pred a za medzerou sú časti aspoň dĺžky 3 znaky
  48. */
  49. function spravne_meno($m) {
  50. $medzera = strpos($m, ' ');
  51. if (!$medzera) return false;
  52. $priezvisko = substr($m, $medzera+1);
  53. return ($medzera > 2 && (strpos($priezvisko, ' ') === FALSE) && strlen($priezvisko) > 2);
  54. }
  55.  
  56. function vypis_kosik() {
  57. global $kvety;
  58. echo '<p><strong>Obsah košíka:</strong></p>';
  59. echo '<p>Adresa doručenia: ' . $_SESSION["adresa"] . '</p>';
  60. $cena = 0;
  61. foreach ($_SESSION['kytica'] as $kluc => $hodn) {
  62. echo '<p>Kytica: <strong>' . $kvety[$kluc]['nazov'] . '</strong> v počte kusov <strong>' . $_SESSION['kytica'][$kluc] . '</strong></p>';
  63. $cena += cena_objednavky($kluc, $hodn);
  64. }
  65. echo '<p>Cena: ' . $cena . ' &euro;</p>';
  66. ?>
  67. <form method="post">
  68. <p><input type="submit" name="zrus" value="Zruš obsah košíka"></p>
  69. </form>
  70. <?php
  71. }
  72.  
  73. // vráti TRUE, ak je adresa neprázdna
  74. function spravna_adresa($a) {
  75. $a = addslashes(htmlspecialchars(strip_tags($a)));
  76. return $a != '';
  77. }
  78.  
  79. // vráti TRUE, ak počet objednaných kytíc > 0
  80. function spravny_pocet($p){
  81. $p = addslashes(htmlspecialchars(strip_tags($p)));
  82. return ($p > 0);
  83. }
  84.  
  85. // vráti TRUE, ak bol označený checkbox so súhlasom
  86. function suhlas_spodmienkami($s){
  87. $s = addslashes(htmlspecialchars(strip_tags($s)));
  88. return ($s == "ano");
  89. }
  90.  
  91. // vráti celkovú cenu objednávky pre kyticu $ind s počtom kusov $poc
  92. function cena_objednavky($ind, $poc) {
  93. $ind = addslashes(htmlspecialchars(strip_tags($ind)));
  94. $poc = addslashes(htmlspecialchars(strip_tags($poc)));
  95. global $kvety;
  96. return $kvety[$ind]['cena'] * $poc;
  97. }
  98.  
  99. // vráti TRUE, ak zadané číslo kytice existuje
  100. function spravna_kytica($k){
  101. $k = addslashes(htmlspecialchars(strip_tags($k)));
  102. global $kvety;
  103. return (isset($kvety[$k]));
  104. }
  105.  
  106. function nazov_ok ($nazov) {
  107. $nazov = addslashes(strip_tags(trim($nazov)));
  108. return strlen($nazov) >= 3 && strlen($nazov) <= 100;
  109. }
  110.  
  111. function popis_ok ($popis) {
  112. $popis = addslashes(strip_tags(trim($popis)));
  113. return strlen($popis) >= 10;
  114. }
  115.  
  116. function cena_ok ($cena) {
  117. return (1 * $cena) > 0;
  118. }
  119.  
  120. function sklad_ok ($sklad) {
  121. return (1 * $sklad) > 0;
  122. }
  123.  
  124. function pridaj_kyticu() {
  125. global $mysqli;
  126. if (!$mysqli->connect_errno) {
  127. $nazov = $mysqli->real_escape_string($_POST['nazov']);
  128. $popis = $mysqli->real_escape_string($_POST['popis']);
  129. $cena = $mysqli->real_escape_string($_POST['cena']);
  130. $na_sklade = $mysqli->real_escape_string($_POST['na_sklade']);
  131.  
  132. $sql = "INSERT INTO kvety_tovar SET nazov='$nazov', popis='$popis', cena='$cena', na_sklade='$na_sklade'"; // definuj dopyt
  133.  
  134. if ($result = $mysqli->query($sql)) { // vykonaj dopyt
  135. echo '<p>Kytica s kódom <strong>'. $mysqli->insert_id .'</strong> bola pridaná.</p>'. "\n";
  136. } elseif ($mysqli->errno) {
  137. echo '<p class="chyba">Nastala chyba pri pridávaní kytice. (' . $mysqli->error . ')</p>';
  138. }
  139. }
  140. } // koniec funkcie
  141.  
  142. function vypis_kytice_uprav_zrus() {
  143. ?>
  144. <p><a href="pridaj.php">pridaj kyticu</a></p>
  145. <?php
  146. global $mysqli;
  147. if (!$mysqli->connect_errno) {
  148. $sql="SELECT * FROM kvety_tovar ORDER BY nazov ASC";
  149. if ($result = $mysqli->query($sql)) { // vykonaj dopyt
  150. // dopyt sa podarilo vykonať
  151. echo '<form method="post">';
  152. echo '<p>';
  153. while ($row = $result->fetch_assoc()) {
  154. echo "<input type='checkbox' name='tovar[]' value='{$row['kod']}' id='tovar{$row['kod']}'><label for='tovar{$row['kod']}'>{$row['nazov']}</label><br>\n";
  155. }
  156. echo '</p>';
  157. echo '<p><input type="submit" name="zrus" value="Zruš kytice"></p>';
  158. echo '</form>';
  159. $result->free();
  160. } else {
  161. // NEpodarilo sa vykonať dopyt!
  162. echo '<p class="chyba">Nastala chyba pri získavaní údajov z DB.</p>' . "\n";
  163. }
  164. }
  165. }
  166.  
  167. // zrusi kyticu c. $idk z tabulky kvety_tovar
  168. function zrus_kyticu($idk) {
  169. global $mysqli;
  170. if (!$mysqli->connect_errno) {
  171. $sql="DELETE FROM kvety_tovar WHERE kod='$idk'"; // definuj dopyt
  172. if ($result = $mysqli->query($sql) && ($mysqli->affected_rows > 0)) { // vykonaj dopyt
  173. // dopyt sa podarilo vykonať
  174. echo "<p>Kytica č. $idk bola zrušená.</p>\n";
  175. } else {
  176. // NEpodarilo sa vykonať dopyt!
  177. echo "<p class='chyba'>Nastala chyba pri rušení kytice č. $idk.</p>\n";
  178. }
  179. }
  180. } // koniec funkcie
  181.  
  182. // vypise tabulku vsetkych objednavok s odkazom na podrobne udaje o konkretnej objednavke
  183. function vypis_objednavky() {
  184. global $mysqli;
  185. if (!$mysqli->connect_errno) {
  186. $sql = "SELECT * FROM kvety_objednavky, kvety_pouzivatelia WHERE kvety_objednavky.id_pouz= kvety_pouzivatelia.id_pouz ORDER BY id ASC"; // definuj dopyt
  187. // echo "sql = $sql <br>";
  188. if ($result = $mysqli->query($sql)) { // vykonaj dopyt
  189. // dopyt sa podarilo vykonať
  190. echo '<table>';
  191. echo '<tr><th>číslo objednávky</th><th>meno a priezvisko</th><th>dátum doručenia</th><th>cena</th></tr>';
  192. while ($row = $result->fetch_assoc()) {
  193. echo '<tr><td><a href="administracia.php?kod=' . $row['id'] . '">' . $row['id'] . '</a></td><td>' . $row['meno'] . '</td><td>' . $row['kedy_dorucit'] . '</td><td>' . $row['cena_spolu'] . '&euro;</td>';
  194. echo "</tr>\n";
  195. }
  196. echo '</table>';
  197. $result->free();
  198. } else {
  199. // dopyt sa NEpodarilo vykonať!
  200. echo '<p class="chyba">NEpodarilo sa získať údaje z databázy</p>';
  201. }
  202. }
  203. }
  204.  
  205. function vypis_objednavku($id) {
  206. // do premennej $row treba priradiť jednotlivé položky objednávky $id
  207. global $mysqli;
  208. if (!$mysqli->connect_errno) {
  209. $id = $mysqli->real_escape_string($id);
  210. $sql = "SELECT * FROM kvety_objednavky, kvety_tovar WHERE kvety_objednavky.kytica = kvety_tovar.kod AND kvety_objednavky.id='$id'"; // definuj dopyt
  211. // echo "sql = $sql <br>";
  212. if (($result = $mysqli->query($sql)) && ($row = $result->fetch_assoc()) ) { // vykonaj dopyt
  213. echo '<table border="1">';
  214. echo "<tr><th>číslo objednávky</th><td>{$row['id']}</td></tr>\n";
  215. echo "<tr><th>meno a priezvisko</th><td>{$row['meno']}</td></tr>\n";
  216. echo "<tr><th>adresa doručenia</th><td>{$row['adresa']}</td></tr>\n";
  217. echo "<tr><th>kytica</th><td>{$row['nazov']}</td></tr>\n";
  218. echo "<tr><th>počet</th><td>{$row['pocet']}</td></tr>\n";
  219. echo "<tr><th>venovanie</th><td>{$row['venovanie']}</td></tr>\n";
  220. echo "<tr><th>dátum doručenia</th><td>{$row['kedy_dorucit']}</td></tr>\n";
  221. echo "<tr><th>cena</th><td>{$row['cena_spolu']} &euro;</td></tr>\n";
  222. echo '</table>';
  223. } else {
  224. // dopyt sa NEpodarilo vykonať!
  225. echo '<p class="chyba">NEpodarilo sa získať údaje z databázy, resp. objednávka neexistuje</p>' . $mysqli->error ;
  226. }
  227. }
  228. }
  229.  
  230. // vrati udaje pouzivatela ako asociativne pole, ak existuje pouzivatel $username s heslom $pass, inak vrati FALSE
  231. function over_pouzivatela($username, $pass) {
  232. global $mysqli;
  233. if (!$mysqli->connect_errno) {
  234. $sql = "SELECT * FROM kvety_pouzivatelia WHERE prihlasmeno='$username' AND heslo=MD5('$pass')"; // definuj dopyt
  235. // echo "sql = $sql <br>";
  236. if (($result = $mysqli->query($sql)) && ($result->num_rows > 0)) { // vykonaj dopyt
  237. // dopyt sa podarilo vykonať
  238. $row = $result->fetch_assoc();
  239. $result->free();
  240. return $row;
  241. } else {
  242. // dopyt sa NEpodarilo vykonať, resp. používateľ neexistuje!
  243. return false;
  244. }
  245. } else {
  246. // NEpodarilo sa spojiť s databázovým serverom!
  247. return false;
  248. }
  249. }
  250.  
  251. // zmeni heslo $pass pouzivatelovi s id cislom $id
  252. function zmen_heslo($id, $pass) {
  253. global $mysqli;
  254. if (!$mysqli->connect_errno) {
  255. $sql=""; // definuj dopyt
  256. // echo "sql = $sql <br>";
  257. if ($result = $mysqli->query($sql)) { // vykonaj dopyt
  258. // dopyt sa podarilo vykonať
  259. echo '<p>Heslo bolo zmenené.</p>'. "\n";
  260. } else {
  261. // NEpodarilo sa vykonať dopyt!
  262. echo '<p class="chyba">Nastala chyba pri zmene hesla.</p>'. "\n";
  263. }
  264. } else {
  265. // NEpodarilo sa spojiť s databázovým serverom alebo vybrať databázu!
  266. echo '<p class="chyba">NEpodarilo sa spojiť s databázovým serverom!</p>';
  267. }
  268. } // koniec funkcie
  269.  
  270. function pridaj_pouzivatela() {
  271. global $mysqli;
  272. if (!$mysqli->connect_errno) {
  273. $prihlasmeno = $mysqli->real_escape_string($_POST['prihlasmeno']);
  274. $heslo = $mysqli->real_escape_string($_POST['heslo']);
  275. $meno = $mysqli->real_escape_string($_POST['meno']);
  276. $priezvisko = $mysqli->real_escape_string($_POST['priezvisko']);
  277. $admin = isset($_POST['admin']) && ($mysqli->real_escape_string($_POST['admin']) == '1') ? 1 : 0;
  278. $sql = ""; // definuj dopyt
  279. if ($result = $mysqli->query($sql)) { // vykonaj dopyt
  280. // dopyt sa podarilo vykonať
  281. echo '<p>Používateľ bol pridaný.</p>'. "\n";
  282. return true;
  283. } else {
  284. // NEpodarilo sa vykonať dopyt!
  285. echo '<p class="chyba">Nastala chyba pri pridávaní používateľa';
  286. // kontrola, či nenastala duplicita kľúča (číslo chyby 1062) - prihlasovacie meno už existuje
  287. // $mysqli->errno == 1062 echo ' (zadané prihlasovacie meno už existuje)';
  288. echo '.</p>' . "\n";
  289. return false;
  290. }
  291. } else {
  292. // NEpodarilo sa spojiť s databázovým serverom alebo vybrať databázu!
  293. echo '<p class="chyba">NEpodarilo sa spojiť s databázovým serverom!</p>';
  294. return false;
  295. }
  296. } // koniec funkcie
  297.  
  298. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement