connect_error) { die("Connection failed: " . $conn->connect_error); } $mysqlerror = NULL; $adderror = NULL; $editerror = NULL; function remove_accents($string) { if (!preg_match('/[\x80-\xff]/', $string)) return $string; $chars = array( // Decompositions for Latin-1 Supplement chr(195) . chr(128) => 'A', chr(195) . chr(129) => 'A', chr(195) . chr(130) => 'A', chr(195) . chr(131) => 'A', chr(195) . chr(132) => 'A', chr(195) . chr(133) => 'A', chr(195) . chr(135) => 'C', chr(195) . chr(136) => 'E', chr(195) . chr(137) => 'E', chr(195) . chr(138) => 'E', chr(195) . chr(139) => 'E', chr(195) . chr(140) => 'I', chr(195) . chr(141) => 'I', chr(195) . chr(142) => 'I', chr(195) . chr(143) => 'I', chr(195) . chr(145) => 'N', chr(195) . chr(146) => 'O', chr(195) . chr(147) => 'O', chr(195) . chr(148) => 'O', chr(195) . chr(149) => 'O', chr(195) . chr(150) => 'O', chr(195) . chr(153) => 'U', chr(195) . chr(154) => 'U', chr(195) . chr(155) => 'U', chr(195) . chr(156) => 'U', chr(195) . chr(157) => 'Y', chr(195) . chr(159) => 's', chr(195) . chr(160) => 'a', chr(195) . chr(161) => 'a', chr(195) . chr(162) => 'a', chr(195) . chr(163) => 'a', chr(195) . chr(164) => 'a', chr(195) . chr(165) => 'a', chr(195) . chr(167) => 'c', chr(195) . chr(168) => 'e', chr(195) . chr(169) => 'e', chr(195) . chr(170) => 'e', chr(195) . chr(171) => 'e', chr(195) . chr(172) => 'i', chr(195) . chr(173) => 'i', chr(195) . chr(174) => 'i', chr(195) . chr(175) => 'i', chr(195) . chr(177) => 'n', chr(195) . chr(178) => 'o', chr(195) . chr(179) => 'o', chr(195) . chr(180) => 'o', chr(195) . chr(181) => 'o', chr(195) . chr(182) => 'o', chr(195) . chr(182) => 'o', chr(195) . chr(185) => 'u', chr(195) . chr(186) => 'u', chr(195) . chr(187) => 'u', chr(195) . chr(188) => 'u', chr(195) . chr(189) => 'y', chr(195) . chr(191) => 'y', // Decompositions for Latin Extended-A chr(196) . chr(128) => 'A', chr(196) . chr(129) => 'a', chr(196) . chr(130) => 'A', chr(196) . chr(131) => 'a', chr(196) . chr(132) => 'A', chr(196) . chr(133) => 'a', chr(196) . chr(134) => 'C', chr(196) . chr(135) => 'c', chr(196) . chr(136) => 'C', chr(196) . chr(137) => 'c', chr(196) . chr(138) => 'C', chr(196) . chr(139) => 'c', chr(196) . chr(140) => 'C', chr(196) . chr(141) => 'c', chr(196) . chr(142) => 'D', chr(196) . chr(143) => 'd', chr(196) . chr(144) => 'D', chr(196) . chr(145) => 'd', chr(196) . chr(146) => 'E', chr(196) . chr(147) => 'e', chr(196) . chr(148) => 'E', chr(196) . chr(149) => 'e', chr(196) . chr(150) => 'E', chr(196) . chr(151) => 'e', chr(196) . chr(152) => 'E', chr(196) . chr(153) => 'e', chr(196) . chr(154) => 'E', chr(196) . chr(155) => 'e', chr(196) . chr(156) => 'G', chr(196) . chr(157) => 'g', chr(196) . chr(158) => 'G', chr(196) . chr(159) => 'g', chr(196) . chr(160) => 'G', chr(196) . chr(161) => 'g', chr(196) . chr(162) => 'G', chr(196) . chr(163) => 'g', chr(196) . chr(164) => 'H', chr(196) . chr(165) => 'h', chr(196) . chr(166) => 'H', chr(196) . chr(167) => 'h', chr(196) . chr(168) => 'I', chr(196) . chr(169) => 'i', chr(196) . chr(170) => 'I', chr(196) . chr(171) => 'i', chr(196) . chr(172) => 'I', chr(196) . chr(173) => 'i', chr(196) . chr(174) => 'I', chr(196) . chr(175) => 'i', chr(196) . chr(176) => 'I', chr(196) . chr(177) => 'i', chr(196) . chr(178) => 'IJ', chr(196) . chr(179) => 'ij', chr(196) . chr(180) => 'J', chr(196) . chr(181) => 'j', chr(196) . chr(182) => 'K', chr(196) . chr(183) => 'k', chr(196) . chr(184) => 'k', chr(196) . chr(185) => 'L', chr(196) . chr(186) => 'l', chr(196) . chr(187) => 'L', chr(196) . chr(188) => 'l', chr(196) . chr(189) => 'L', chr(196) . chr(190) => 'l', chr(196) . chr(191) => 'L', chr(197) . chr(128) => 'l', chr(197) . chr(129) => 'L', chr(197) . chr(130) => 'l', chr(197) . chr(131) => 'N', chr(197) . chr(132) => 'n', chr(197) . chr(133) => 'N', chr(197) . chr(134) => 'n', chr(197) . chr(135) => 'N', chr(197) . chr(136) => 'n', chr(197) . chr(137) => 'N', chr(197) . chr(138) => 'n', chr(197) . chr(139) => 'N', chr(197) . chr(140) => 'O', chr(197) . chr(141) => 'o', chr(197) . chr(142) => 'O', chr(197) . chr(143) => 'o', chr(197) . chr(144) => 'O', chr(197) . chr(145) => 'o', chr(197) . chr(146) => 'OE', chr(197) . chr(147) => 'oe', chr(197) . chr(148) => 'R', chr(197) . chr(149) => 'r', chr(197) . chr(150) => 'R', chr(197) . chr(151) => 'r', chr(197) . chr(152) => 'R', chr(197) . chr(153) => 'r', chr(197) . chr(154) => 'S', chr(197) . chr(155) => 's', chr(197) . chr(156) => 'S', chr(197) . chr(157) => 's', chr(197) . chr(158) => 'S', chr(197) . chr(159) => 's', chr(197) . chr(160) => 'S', chr(197) . chr(161) => 's', chr(197) . chr(162) => 'T', chr(197) . chr(163) => 't', chr(197) . chr(164) => 'T', chr(197) . chr(165) => 't', chr(197) . chr(166) => 'T', chr(197) . chr(167) => 't', chr(197) . chr(168) => 'U', chr(197) . chr(169) => 'u', chr(197) . chr(170) => 'U', chr(197) . chr(171) => 'u', chr(197) . chr(172) => 'U', chr(197) . chr(173) => 'u', chr(197) . chr(174) => 'U', chr(197) . chr(175) => 'u', chr(197) . chr(176) => 'U', chr(197) . chr(177) => 'u', chr(197) . chr(178) => 'U', chr(197) . chr(179) => 'u', chr(197) . chr(180) => 'W', chr(197) . chr(181) => 'w', chr(197) . chr(182) => 'Y', chr(197) . chr(183) => 'y', chr(197) . chr(184) => 'Y', chr(197) . chr(185) => 'Z', chr(197) . chr(186) => 'z', chr(197) . chr(187) => 'Z', chr(197) . chr(188) => 'z', chr(197) . chr(189) => 'Z', chr(197) . chr(190) => 'z', chr(197) . chr(191) => 's' ); $string = strtr($string, $chars); return $string; } function vypisTreninku() { global $conn; $sql = "SELECT id, datum, kapacita, jmeno FROM trenink_trenink ORDER BY datum ASC;"; $result = $conn->query($sql); if ($result->num_rows > 0) { // output data of each row $dateus = array("/^1/", "/^2/", "/^3/", "/^4/", "/^5/", "/^6/", "/^7/"); $datecz = array("Po", "Út", "St", "Čt", "Pa", "So", "Ne"); while ($row = $result->fetch_assoc()) { $sql1 = "select * from trenink_zapsan where trenink=" . $row["id"] . ";"; $result1 = $conn->query($sql1); echo ''; echo '' . $row["jmeno"] . '
' . preg_replace($dateus, $datecz, date("N j.&\\nb\sp;n. Y \o\d&\\nb\sp;H:i", strtotime($row["datum"]))) . ''; echo '' . $result1->num_rows . '/' . $row["kapacita"] . ''; echo ''; echo 'Upravit'; echo 'Seznam'; echo ''; echo ''; } } else { echo ''; echo "Žádné Tréninky"; echo ''; } } function addTrenink($nazev, $datum, $kapacita, $obrazek, $popis, $treneri) { global $adderror; global $mysqlerror; if (empty($nazev) || empty($datum) || empty($kapacita) || empty($obrazek) || empty($popis)) { $adderror = "Vyplňte všechna pole."; } else { $check = getimagesize($obrazek); if ($check !== false) { global $conn; $obrazek = addslashes(file_get_contents($obrazek)); $sql = "INSERT INTO `trenink_trenink` (`id`, `datum`, `kapacita`, `jmeno`, `popis`, `obrazek`) VALUES (NULL, '" . date("Y-m-d H:i:s", strtotime($datum)) . "', '$kapacita', '$nazev', '$popis', '{$obrazek}');"; if ($conn->query($sql) === FALSE) { $mysqlerror = "Error: " . $sql . "
" . $conn->error; } $treninkId = $conn->insert_id; $sql = "INSERT INTO `trenink_trenuje` (`trener`, `trenink`) VALUES "; for ($i = 0; $i < count($treneri); $i++) { $sql .= "('" . $treneri["$i"] . "', '$treninkId')"; if (count($treneri) != 1 && $i != count($treneri) - 1) { $sql .= ", "; } } $sql .= ";"; if ($conn->query($sql) === FALSE) { $mysqlerror = "Error: " . $sql . "
" . $conn->error; } } else { $adderror = "Soubor musí být obrázek."; } } } function vypisTreneru() { global $conn; $sql = "SELECT id, jmeno, prijmeni FROM trenink_user WHERE `role`=2;"; $result = $conn->query($sql); if ($result->num_rows > 0) { while ($row = $result->fetch_assoc()) { echo ''; } } else { echo ''; } } function editVypisTreneru($trenink) { global $conn; $sql = "SELECT u.id, u.jmeno, u.prijmeni FROM trenink_trenuje t INNER JOIN trenink_user u ON t.trener=u.id WHERE t.trenink=$trenink;"; $result = $conn->query($sql); if ($result->num_rows > 0) { $sql = "SELECT id, jmeno, prijmeni FROM trenink_user WHERE `role`=2 AND id NOT IN("; $count = $result->num_rows - 1; while ($row = $result->fetch_assoc()) { $sql .= $row['id']; if ($count) { $sql .= ", "; $count--; } echo ''; } $sql .= ");"; $result = $conn->query($sql); while ($row = $result->fetch_assoc()) { echo ''; } } else { vypisTreneru(); } } function vypisPrihlasenych($trenink) { global $conn; $sql = "SELECT u.id, u.jmeno, u.prijmeni, u.overeni FROM trenink_zapsan z INNER JOIN trenink_user u ON u.id=z.client WHERE z.trenink=$trenink"; $result = $conn->query($sql); if ($result->num_rows > 0) { while ($row = $result->fetch_assoc()) { if ($row['overeni'] > 1) { echo ''; } elseif ($row['overeni'] > 0) { echo ''; } else { echo ''; } echo '' . $row['prijmeni'] . ' ' . $row['jmeno'] . ''; echo 'Odepsat '; echo ''; } } else { echo 'Nikdo není přihlášen.'; } } function odepsat($client, $trenink) { global $conn; global $mysqlerror; $sql = "DELETE FROM `trenink_zapsan` WHERE `trenink_zapsan`.`client` = " . $client . " AND `trenink_zapsan`.`trenink` = $trenink;"; if ($conn->query($sql) === FALSE) { $mysqlerror = "Error: " . $sql . "
" . $conn->error; } } function editForm($trenink) { global $conn; global $editerror; $sql = "SELECT * FROM trenink_trenink WHERE `id`=$trenink;"; $result = $conn->query($sql); if ($result->num_rows > 0) { $row = $result->fetch_assoc(); echo '
'; echo '
'; echo ''; echo ''; echo ''; echo '
'; echo '
'; echo ''; echo ''; echo '
'; echo '
'; echo ''; echo ''; echo '
'; echo '
'; echo ''; echo ''; echo '
'; echo '
'; echo ''; echo '
'; echo ''; echo ''; echo '
'; echo ''; echo '
'; echo '
'; } } function editTrenink($id, $nazev, $datum, $kapacita, $obrazek, $popis, $treneri) { global $mysqlerror; if (empty($nazev) || empty($datum) || empty($kapacita) || empty($popis)) { $mysqlerror = "Vyplňte všechna pole."; } else { global $conn; $check = (empty($obrazek)) ? '' : getimagesize($obrazek); if (!empty($obrazek) && $check !== false) { $obrazek = addslashes(file_get_contents($obrazek)); $sql = "UPDATE `trenink_trenink` SET `datum` = '" . date("Y-m-d H:i:s", strtotime($datum)) . "', `kapacita` = '$kapacita', `jmeno` = '$nazev', `popis` = '$popis', `obrazek` = '$obrazek' WHERE `trenink_trenink`.`id` = $id; ;"; } else { $sql = "UPDATE `trenink_trenink` SET `datum` = '" . date("Y-m-d H:i:s", strtotime($datum)) . "', `kapacita` = '$kapacita', `jmeno` = '$nazev', `popis` = '$popis' WHERE `trenink_trenink`.`id` = $id; ;"; } if ($conn->query($sql) === FALSE) { $mysqlerror = "Error: " . $sql . "
" . $conn->error; } $sql = "DELETE FROM `trenink_trenuje` WHERE `trenink_trenuje`.`trenink` = $id; "; if ($conn->query($sql) === FALSE) { $mysqlerror = "Error: " . $sql . "
" . $conn->error; } $sql = "INSERT INTO `trenink_trenuje` (`trener`, `trenink`) VALUES "; for ($i = 0; $i < count($treneri); $i++) { $sql .= "('" . $treneri["$i"] . "', '$id')"; if (count($treneri) != 1 && $i != count($treneri) - 1) { $sql .= ", "; } } $sql .= ";"; if ($conn->query($sql) === FALSE) { $mysqlerror = "Error: " . $sql . "
" . $conn->error; } } } function delete($trenink) { global $conn; global $mysqlerror; $sql = "DELETE FROM `trenink_zapsan` WHERE `trenink_zapsan`.`trenink` = $trenink;"; if ($conn->query($sql) === FALSE) { $mysqlerror = "Error: " . $sql . "
" . $conn->error; } $sql = "DELETE FROM `trenink_trenuje` WHERE `trenink_trenuje`.`trenink` = $trenink;"; if ($conn->query($sql) === FALSE) { $mysqlerror = "Error: " . $sql . "
" . $conn->error; } $sql = "DELETE FROM `trenink_trenink` WHERE `trenink_trenink`.`id` = $trenink;"; if ($conn->query($sql) === FALSE) { $mysqlerror = "Error: " . $sql . "
" . $conn->error; } } function vypisUzivatelu() { global $conn; $sql = "SELECT id, jmeno, prijmeni, overeni FROM trenink_user;"; $result = $conn->query($sql); if ($result->num_rows > 0) { while ($row = $result->fetch_assoc()) { if ($row['overeni'] > 1) { echo ''; } elseif ($row['overeni'] > 0) { echo ''; } else { echo ''; } echo '' . $row['prijmeni'] . ' ' . $row['jmeno'] . ''; echo ''; echo 'Upravit'; echo ''; echo ''; } } else { echo 'Žádní uživatelé.'; } } function editFormUser($user) { global $conn; global $editerror; $sql = "SELECT * FROM trenink_user WHERE `id`=$user;"; $result = $conn->query($sql); if ($result->num_rows > 0) { $row = $result->fetch_assoc(); echo '
'; echo '
'; echo ''; echo ''; echo ''; echo '
'; echo '
'; echo ''; echo ''; echo '
'; echo '
'; echo ''; echo ''; echo '
'; echo '
'; echo ''; echo ''; echo '
'; echo '
'; if ($row['overeni'] < 2) { echo ''; } else { echo ''; } echo '
'; echo '
'; } } function editUser($id, $jmeno, $prijmeni, $email, $funkce){ global $mysqlerror; if (empty($id) || empty($jmeno) || empty($prijmeni) || empty($email) || empty($funkce)) { $mysqlerror = "Vyplňte všechna pole."; } else { global $conn; $sql = "UPDATE `trenink_user` SET `email` = '$email', `role` = '$funkce', `jmeno` = '$jmeno', `prijmeni` = '$prijmeni' WHERE `trenink_user`.`id` = $id;"; if ($conn->query($sql) === FALSE) { $mysqlerror = "Error: " . $sql . "
" . $conn->error; } } } function overit($id){ global $mysqlerror; if (empty($id)) { $mysqlerror = "Vyplňte všechna pole."; } else { global $conn; $sql = "UPDATE `trenink_user` SET `overeni` = `overeni` + 2 WHERE `trenink_user`.`id` = $id;"; if ($conn->query($sql) === FALSE) { $mysqlerror = "Error: " . $sql . "
" . $conn->error; } } } function zrusitOvereni($id) { global $mysqlerror; if (empty($id)) { $mysqlerror = "Vyplňte všechna pole."; } else { global $conn; $sql = "UPDATE `trenink_user` SET `overeni` = `overeni` - 2 WHERE `trenink_user`.`id` = $id;"; if ($conn->query($sql) === FALSE) { $mysqlerror = "Error: " . $sql . "
" . $conn->error; } } } function deleteUser($id) { global $mysqlerror; if (empty($id)) { $mysqlerror = "Vyplňte všechna pole."; } else { global $conn; $sql = "DELETE FROM `trenink_trenuje` WHERE `trenink_trenuje`.`trener` = $id"; if ($conn->query($sql) === FALSE) { $mysqlerror = "Error: " . $sql . "
" . $conn->error; } $sql = "DELETE FROM `trenink_zapsan` WHERE `trenink_zapsan`.`client` = $id"; if ($conn->query($sql) === FALSE) { $mysqlerror = "Error: " . $sql . "
" . $conn->error; } $sql = "DELETE FROM `trenink_user` WHERE `trenink_user`.`id` = $id"; if ($conn->query($sql) === FALSE) { $mysqlerror = "Error: " . $sql . "
" . $conn->error; } } }