Различные вопросы по PHP и MySQL

254K
.
(\/)____o_O____(\/)

Sitego, есть специальный консольный софт, норм делает бэкапы, и быстро

.
Enter нажат, к чему теперь рыданья…

Koenig, так VestaCP тоже быстро и в нормальном формате архивов, без всяких извращений линукса, типа dar-архивы.
После создания бэкапы автоматом отправляю на Яндекс.Диск.

.
посмотрите код. что не так сделал? всю голову обломал. Надо чтоб в админке для админов было только назначение матчей. вроде все верно но при переходе в админку все поля скрыты. (+/-)
<?php

define('_IN_JOHNCMS', 1);
$headmod = 'manager';
$textl = 'Футбольный менеджер. Админка';
require_once ("../incfiles/core.php");
require_once ("../incfiles/head.php");

if ($rights >= 9)
{
    if ($_GET['did'])
    {
        mysql_query("DELETE FROM `m_player` WHERE `id` = '" . intval($_GET['did']) . "' LIMIT 1;");
    }
    if ($act == "tr" && $id)
    {
        $req = mysql_query("SELECT `id`,`from` FROM `m_player` where `from`='" . $id . "';");
        if (mysql_num_rows($req))
        {
            while ($arr = mysql_fetch_assoc($req))
            {
                mysql_query("UPDATE `m_player` SET
 `kom`='" . $arr['from'] . "',`sostav`='0',`from`='0'
   WHERE `id`='" . $arr['id'] . "' LIMIT 1;");
            }
        }

        $req = mysql_query("SELECT `id`,`from` FROM `m_player` where `kom`='" . $id . "' AND `from`>'0';");
        if (mysql_num_rows($req))
        {
            while ($arr = mysql_fetch_assoc($req))
            {
                mysql_query("UPDATE `m_player` SET
 `kom`='" . $arr['from'] . "',`sostav`='0',`from`='0'
   WHERE `id`='" . $arr['id'] . "' LIMIT 1;");
            }
        }
        echo '<div class="rmenu">Трансферы - ок</div>';
    }
    //Команда
    if ($act == "team" && $id)
    {


        if ($_GET['del'])
        {
            $pid = abs(intval($_GET['did']));
            mysql_query("delete from `m_player`  where `id`='" . $pid . "' LIMIT 1;");

        }
        if ($_POST['name'])
        {
            $name = htmlspecialchars($_POST['name'], ENT_QUOTES, 'UTF-8');
            mysql_query("update `m_player` set `name`='" . $name . "' where `id`='" . $_GET['pid'] . "' LIMIT 1;");
        }
        $qk = mysql_query("select * from `m_team` where `id`='" . $id . "';");
        $krr = mysql_fetch_assoc($qk);

        echo '<div class="gmenu"><img src="logo/' . $krr['id'] . '.png" alt=""/><b>' . $krr['name'] . '</b></div>';
        echo '<div class="list2">Менеджер: <b>' . $krr['name_admin'] . '</b> <a href="admin.php?act=delman&amp;id=' . $id . '">Уволить</a></div>';


        $req = mysql_query("SELECT `id`,`name`,`nomer`,`poz` FROM `m_player` where `kom`='" . $id . "' order by line asc;");
        while ($arr = mysql_fetch_assoc($req))
        {
            echo '<div class="list2"><form action="admin.php?act=team&amp;id=' . $id . '&amp;pid=' . $arr['id'] . '" method="post">
<img src="flag/' . $arr['strana'] . '.png" alt=""/> ' . $arr['nomer'] . '
<a href="player.php?id=' . $arr['id'] . '&amp;act=edit">' . $arr['name'] . '[' . $arr['poz'] . ']</a>
<input type="text" name="name" value="' . $arr['name'] . '"/>';
            echo "<input type='submit' title='Нажмите для отправки' name='submit' value='[REN]'/>";
            echo ' <a href="admin.php?act=team&amp;id=' . $id . '&amp;did=' . $arr['id'] . '&amp;del">[DEL]</a></form>
</div>';


        }
        $country = array(
            'alb',
            'alzh',
            'arg',
            'arm',
            'aus',
            'avs',
            'aze',
            'bel',
            'blr',
            'bol',
            'bosn',
            'br',
            'cam',
            'che',
            'cher',
            'chi',
            'chili',
            'dan',
            'ekv',
            'en',
            'fin',
            'fr',
            'gana',
            'ge',
            'go',
            'gon',
            'gre',
            'gru',
            'gvi',
            'hor',
            'iran',
            'irl',
            'isl',
            'isr',
            'it',
            'kan',
            'kol',
            'kor',
            'kot',
            'kz',
            'lat',
            'lit',
            'mak',
            'mali',
            'mar',
            'mek',
            'nig',
            'nor',
            'par',
            'peru',
            'pol',
            'por',
            'rum',
            'rus',
            'sen',
            'ser',
            'sho',
            'shv',
            'shve',
            'sirl',
            'slo',
            'sp',
            'togo',
            'tur',
            'ua',
            'uzb',
            'uels',
            'uru',
            'usa',
            'ven',
            'yam',
            'yap',
            'zel');
        $pozition = array(
            "Вр",
            "ЛЗ",
            "ЦЗ",
            "ПЗ",
            "ЛП",
            "ЦП",
            "ПП",
            "ОП",
            "АПЗ",
            "ПМ",
            "ЛФ",
            "ЦФ",
            "ПФ");
        echo '<div class="gmenu"><b>Создать игрока</b></div>';
        echo '<div class="list2"><form action="admin.php?act=addplay&amp;id=' . $id . '" method="post">';


        echo '<input type="text" name="name"  value="Иван Иванов"/> Имя<br/>';
        echo 'Страна <select name="strana">';
        echo "<option>" . $krr['strana'] . "</option>";
        foreach ($country as $kk)
        {
            echo "<option>$kk</option>";
        }
        echo "</select><br/>";
        echo '<input type="text" name="nomer"  value="10"/> Номер<br/>';
        echo 'Позиция <select name="poz">';
        echo "<option>ЦФ</option>";
        foreach ($pozition as $ku)
        {
            echo "<option>$ku</option>";
        }
        echo "</select><br/>";
        echo '<input type="text" name="voz"  value="20"/> Возраст<br/>';
        echo '<input type="text" name="tal"  value="3"/> Талант<br/>';
        echo '<input type="text" name="mas"  value="50"/> Мастерство<br/>';
        echo '<input type="text" name="money"  value="8000000"/> Денег<br/>';


        echo "<input type='submit' title='Нажмите для отправки' name='submit' value='Создать'/></form></div>";


        require_once ("../incfiles/end.php");
        exit;
    }


    //Дивизион
    if ($act == "divizion")
    {
        $strana = $_GET['strana'];
        if ($_POST['name'])
        {
            $name = htmlspecialchars($_POST['name'], ENT_QUOTES, 'UTF-8');
            mysql_query("update `m_team` set `name`='" . $name . "' where `id`='" . $id . "' LIMIT 1;");
        }
        echo '<div class="gmenu"><img src="flag/' . $strana . '.png" alt=""/> <b>' . $strana . '</b></div>';
        $req = mysql_query("SELECT * FROM `m_team` where `strana`='" . $strana . "' order by oo desc;");
        while ($arr = mysql_fetch_assoc($req))
        {

            echo '<div class="list2"><form action="admin.php?act=divizion&amp;strana=' . $strana . '&amp;id=' . $arr['id'] . '" method="post"><a href="my_images.php?act=up_logo&amp;strana=' . $strana . '&amp;id=' . $arr['id'] . '"><img src="logo/' . $arr['id'] . '.png" alt="[edit]"/></a>
<a href="admin.php?act=tr&amp;id=' . $arr['id'] . '">[Трансф]</a> <a href="admin.php?act=team&amp;id=' . $arr['id'] . '">' . $arr['name'] . '</a>
<input type="text" name="name" value="' . $arr['name'] . '"/>';
            echo "<input type='submit' title='Нажмите для отправки' name='submit' value='[REN]'/>";
            echo '</form>';
            echo '</div>';
        }

        echo '<div class="gmenu"><b>Создать команду</b></div>';
        echo '<div class="list2"><form action="admin.php?act=addteam&amp;strana=' . $strana . '" method="post">';
        echo '<input type="text" name="name"  value=""/> ';
        echo "<input type='submit' title='Нажмите для отправки' name='submit' value='Создать'/></form></div>";


        require_once ("../incfiles/end.php");
        exit;
    }

    // Создаем команду
    if ($act == "addteam")
    {
        $strana = $_GET['strana'];
        $name = htmlspecialchars($_POST['name'], ENT_QUOTES, 'UTF-8');

        $qk = @mysql_query("select * from `m_team` where strana='" . $strana . "';");
        $krr = @mysql_fetch_assoc($qk);

        mysql_query("insert into `m_team` set `name`='" . $name . "', `strana`='" . $strana . "', `divizion`='" . $krr['divizion'] . "';");
        header("location: admin.php?act=divizion&strana=$strana");
        exit;
    }


    // Создаем игрока
    if ($act == "addplay")
    {
        $name = htmlspecialchars($_POST['name'], ENT_QUOTES, 'UTF-8');
        $strana = htmlspecialchars($_POST['strana'], ENT_QUOTES, 'UTF-8');
        $nomer = htmlspecialchars($_POST['nomer'], ENT_QUOTES, 'UTF-8');
        $poz = htmlspecialchars($_POST['poz'], ENT_QUOTES, 'UTF-8');
        $voz = htmlspecialchars($_POST['voz'], ENT_QUOTES, 'UTF-8');
        $tal = htmlspecialchars($_POST['tal'], ENT_QUOTES, 'UTF-8');
        $mas = htmlspecialchars($_POST['mas'], ENT_QUOTES, 'UTF-8');
        $money = htmlspecialchars($_POST['money'], ENT_QUOTES, 'UTF-8');


        switch ($poz)
        {
            case "Вр":
                $line = 1;
                break;

            case "ЛЗ":
                $line = 2;
                break;
            case "ЦЗ":
                $line = 2;
                break;
            case "ПЗ":
                $line = 2;
                break;

            case "ЛП":
                $line = 3;
                break;
            case "ЦП":
                $line = 3;
                break;
            case "ПП":
                $line = 3;
                break;
            case "ОП":
                $line = 3;
                break;
            case "АПЗ":
                $line = 3;
                break;
            case "ПМ":
                $line = 3;
                break;

            case "ЛФ":
                $line = 4;
                break;
            case "ЦФ":
                $line = 4;
                break;
            case "ПФ":
                $line = 4;
                break;
            default:
                $poz = "Вр";
                $line = 1;
                break;
        }


        mysql_query("insert into `m_player` set `name`='" . $name . "', `kom`='" . $id . "', `strana`='" . $strana . "', `nomer`='" . $nomer . "',
`poz`='" . $poz . "',
`line`='" . $line . "',
`voz`='" . $voz . "',
`tal`='" . $tal . "',
`mas`='" . $mas . "',
`rm`='" . $mas . "',
`fiz`='100',
`mor`='0',
`money`='" . $money . "';");


        header("location: admin.php?act=team&id=$id");
        exit;
    }
    if ($act == "manager")
    {
        $total = mysql_result(mysql_query("SELECT COUNT(*) FROM `m_team` where `id_admin`!='0';"), 0);
        $rk = mysql_query("SELECT `id`,`name`,`id_admin`,`time_admin`,`imm` FROM `m_team` where `id_admin`!='0' ORDER BY time_admin ASC LIMIT " . $start . ", 30;");
        $i = 1;
        while ($arrq = mysql_fetch_assoc($rk))
        {
            if ($id && $id == $arrq['id'])
            {
                $arrq['imm'] = $arrq['imm'] == 1 ? 0 : 1;

                mysql_query("update `m_team` set `imm`='" . $arrq['imm'] . "' where `id`='" . $id . "' LIMIT 1;");
            }
            $arr = mysql_fetch_assoc(mysql_query("SELECT `id`,`name`,`lastdate`,`ip`,`browser`,`manager` FROM `users` where `id`='" . $arrq['id_admin'] . "';"));
            echo ceil(ceil($i / 2) - ($i / 2)) == 0 ? '<div class="list2">' : '<div class="list1">';
            echo 'Менеджер: <a href="../str/anketa.php?id=' . $arr['id'] . '"><b>' . $arr['name'] . '</b></a> | иммунитет: <a href="admin.php?act=manager&amp;start=' . $start . '&amp;id=' . $arrq['id'] . '">' . ($arrq['imm'] == 0 ? 'Нет' : 'Есть') . '</a>';
            echo ' В менеджере - ' . (date("d.m.Y (H:i)", $arrq['time_admin']));
            echo ', на сайте - ' . (date("d.m.Y (H:i)", $arr['lastdate']));
            echo '<br/>Команда:<a href="team.php?id=' . $arr['manager'] . '">' . $arrq['name'] . '</a><br/>';

            echo '<div class="gray"><u>UserAgent</u>:&nbsp;' . $arr['browser'] . '<br />';
            echo '<u>IP Address</u>:&nbsp;<a href="../' . $admp . '/index.php?act=usr_search_ip&amp;ip=' . $arr['ip'] . '">' . long2ip($arr['ip']) . '</a></div>';
            echo ' <a href="admin.php?act=delman&amp;id=' . $arrq['id'] . '">Уволить</a></div>';
            $i++;

        }
        echo '<div class="list2">Всего: ' . $total . '</div>';
        if ($total > 30)
        {
            echo '<div class="list2">' . functions::display_pagination('admin.php?act=manager&amp;', $start, $total, 30) . '</div>';
        }
    }
    //Увольняем менеджера
    if ($act == "delman")
    {
        $qk = mysql_query("select `name`,`name_admin`,`id_admin` from `m_team` where `id`='" . $id . "';");
        $krr = mysql_fetch_assoc($qk);
        mysql_query("update `users` set `manager`='' where `manager`='" . $id . "' LIMIT 1;");
        mysql_query("update `m_team` set `name_admin`='', `id_admin`='0',`money`='0',`stad`='0',`bil`='0' where `id`='" . $id . "' LIMIT 1;");
        $msg1 = '<a href="' . $home . '/str/anketa.php?id=' . $user_id . '"><b>' . $login . '</b></a> увольняет <a href="' . $home . '/str/anketa.php?id=' . $krr['id_admin'] . '"><b>' . $krr['name_admin'] . '</b></a> из команды ' . $krr['name'];
        mysql_query("INSERT INTO `sitenews` SET
        `time` = '" . time() . "',
        `from` = '" . $user_id . "',
        `to` = '" . $krr['id_admin'] . "',
        `news` = '" . $msg1 . "',
        `type` = '3',
`show` = '1'");
        header("location: admin.php?act=manager");
        exit;
    }

if ($rights >= 7)
    if ($act == "frend")
    {
        if (isset($_POST['submit']))
        {
            $time = intval(strtotime($_POST['time']));
            $id1 = abs(intval($_POST['id1']));
            $id2 = abs(intval($_POST['id2']));
            $team1 = abs(intval($_POST['team1']));
            $team2 = abs(intval($_POST['team2']));


            $error = false;
            $id_team1 = $id1 ? $id1 : $team1;
            $id_team2 = $id2 ? $id2 : $team2;
            if ($id_team1 == $id_team2)
                $error .= 'Нельзя сыграть матч между одной командой<br />';

            $result1 = mysql_result(mysql_query("select count(*) from `m_team` where id='" . $id_team1 . "'"), 0);
            $result2 = mysql_result(mysql_query("select count(*) from `m_team` where id='" . $id_team2 . "'"), 0);

            if ($id1 && !$result1)
                $error .= 'Команды №1 не существует<br />';
            if ($id2 && !$result2)
                $error .= 'Команды №2 не существует<br />';
            if ($time < time())
                $error .= 'Введите коректное время<br />';
            if (!$error)
            {

                $name_team1 = mysql_fetch_array(mysql_query("SELECT `name`,`id_admin` FROM `m_team` WHERE `id`='" . $id_team1 . "';"));
                $name_team2 = mysql_fetch_array(mysql_query("SELECT `name`,`id_admin` FROM `m_team` WHERE `id`='" . $id_team2 . "';"));
                $tur = date('jmy', $time);
                mysql_query("INSERT INTO `m_tov`  SET `chemp`='1',`tur`='" . $tur . "', `time`='" . $time . "', 
                `id_team1`='" . $id_team1 . "',`name_team1`='" . $name_team1['name'] . "',
                `id_team2`='" . $id_team2 . "',`name_team2`='" . $name_team2['name'] . "',
                `sostav1`='', `shema1`='', `pass1`='0', `strat1`='0', `press1`='0', `tactics1`='0',`sila1`='0',`sostav2`='', `shema2`='', `pass2`='0', `strat2`='0', `press2`='0', `tactics2`='0', `sila2`='0',`rez1`='—', `rez2`='—';");

                //сообщение
                mysql_query("INSERT INTO `cms_mail` SET
`user_id` = '0', 
`from_id` = '" . $name_team1['id_admin'] . "',
`text` = 'У вас назначен новый товарищеский матч',
`time` = '" . time() . "',
`sys` = '1',
`them` = 'Товарищеский матч'");

                //сообщение
                mysql_query("INSERT INTO `cms_mail` SET
`user_id` = '0', 
`from_id` = '" . $name_team2['id_admin'] . "',
`text` = 'У вас назначен новый товарищеский матч',
`time` = '" . time() . "',
`sys` = '1',
`them` = 'Товарищеский матч'");

                header('Location: index.php');
            } else
                echo '<div class="rmenu"><p>ОШИБКА!<br />' . $error . '<a href="?act=frend">Повторить</a></p></div>';
            echo '<div class="phdr"><a href="admin.php">В Админ Панель</a></div>';
            require '../incfiles/end.php';
            exit;
        } else
        {
            echo '<div class="phdr"><b>Назначение матчей</b></div>';

            $req = mysql_query("SELECT * FROM `m_team`  order by name asc;");
            echo '<div class="gmenu" align="center"><p align="center"><form action="?act=frend" method="post">';

            echo '<div class="phdr">Команда №1</div>';
            echo '<p><b>Выберите из списка</b><br /><select name="team1">';
            while ($arr = mysql_fetch_array($req))
                echo '<option value="' . $arr['id'] . '">  ' . $arr['name'] . '</option>';

            echo '</select></p>';
            echo '<p><b>Или введите ID</b><br /><input type="text" size="20" maxlength="64" name="id1" value="" /></p>';

            $req = mysql_query("SELECT * FROM `m_team`  order by name asc;");
            echo '<div class="phdr">Команда №2</div>';
            echo '<p><b>Выберите из списка</b><br /><select name="team2">';
            while ($arr = mysql_fetch_array($req))
                echo '<option value="' . $arr['id'] . '">  ' . $arr['name'] . '</option>';

            echo '</select></p>';
            echo '<p><b>Или введите ID</b><br /><input type="text" size="20" maxlength="64" name="id2" value="" /></p>';

            echo '<p><b>Дата</b><br /><small>00.00.0000 00:00</small><br /><input type="text" size="20" maxlength="16" name="time" /></p>';

            echo '<input type="submit" class="button" name="submit" value="Создать" /></form></p></div>';
            echo '<div class="phdr"><a href="admin.php">В Админ Панель</a></div>';
            require '../incfiles/end.php';
            exit;
        }
    }


    echo '<div class="phdr"><b>Админка</b></div>';
    $matile = mysql_query('SELECT * from `m_team` GROUP BY `strana`;');
    while ($mat = mysql_fetch_assoc($matile))
    {
        echo '<div class="list2"><img src="flag/' . $mat['strana'] . '.png" alt=""/> <a href="admin.php?act=divizion&amp;strana=' . $mat['strana'] . '">' . $mat['divizion'] . '</a></div>';

    }
if ($rights >= 9)
{
    echo '<li><a href="admin.php?act=manager">Менеджеры</a></li>';
    echo '<li><a href="?act=ntur">Управление нац. кубками</a></li>';
    echo '<li><a href="admin.php?act=zay">Заявки</a></li>';
}
if ($rights >= 7){
    echo '<li><a href="?act=frend">Назначение матчей</a></li>';


}    

}
echo '<div class="phdr"><a href="index.php">Вернуться</a></div>';
require_once ("../incfiles/end.php");
.

Alexis22, подобные вопросы на бесплатной основе никто не будет рассматривать. Пиши в "Нужен кодер".

.

Alexis22, товарищ, смешной ты выкладываешь постоянно куски кода по 500-1000 строчек, ты думаешь его кто то будет смотреть?)) тем более ковырять чужой говнокод таких объемов это вообще дело не особо приятное и даже за денюжку не каждый согласиться.

.

подскажите код чтоб прописать проверку на бан. к примеру пользователь получил блокировку, и ему нельзя будет зайти на ту или иную страницу

.
человек И пароход

Alexis22, Как вариант разместить где-нибудь после заголовка страницы, которую нужно скрыть

if (!empty($ban)){
echo '<div class="rmenu">С баном доступ закрыт!</div>';
require('../incfiles/end.php');
exit;
}
.

Alexis22,

if (!empty($ban['1']) || !empty($ban['12']) || !empty($ban['13'])) { //1, 2, 3 виды банов
echo '<div>Доступ запрещен, вы в баньке</div>';
require_once '../incfiles/end.php';
exit;
}
.
# Crack (02.06.2016 / 16:38)
Alexis22, Как вариант разместить где-нибудь после заголовка страницы, которую нужно скрыть


if (!empty($ban)){
echo '<div class="rmenu">С баном доступ закрыт!</div>';
require('../incfiles/end.p
спасибо огромное)
.
Alexis22
# Str@nnik (02.06.2016 / 16:39)
Alexis22, if (!empty($ban['1']) || !empty($ban['12']) || !empty($ban['13'])) { //1, 2, 3 виды банов
echo '<div>Доступ запрещен, вы в баньке</div>';
require_once '../incfiles/end.php';
exit;
}
а какой вид бана на блокировку? а то я сейчас не могу в полном обьеме просматривать хост... пользуюсь тоталкомандером с помощью фтп доступа сижу
Всего: 7969