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 '';
}
}
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 '';
}
}
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;
}
}
}