За последние 24 часа нас посетили 18497 программистов и 1704 робота. Сейчас ищут 854 программиста ...

Помогите по Созданию Админки

Тема в разделе "PHP для новичков", создана пользователем kritskiy, 19 янв 2014.

  1. kritskiy

    kritskiy Новичок

    С нами с:
    19 янв 2014
    Сообщения:
    18
    Симпатии:
    0
    День Добрый Ув Программисты, Хотелось бы изучить php чтобы мог на нем говорить как на родном языке.
    Решил написать сайт с собственным движком основа php.
    P.s я очень плохо объясняю но прошу помощи.
    Вот Собственно вопрос первый, Создал Сайт хочу сделать к нему админку, в админку вбить функцию ВКЛ ОТКЛ сайта, скрипт вкл откл написал работает вручную но админку хочу написать для простого ее использования в лк нажал сохранил и все как это сделать?
    Пример Вкл ОТКЛ
    <?php
    $sat_on = true; // Включение(true)/Выключение(false) Сайта
    if(!$sat_on){
    echo '<meta charset="utf-8"/>';
    die("Сайт Временно Недоступен Приносим Наши Извинения.");

    }
    ?>
    Это дело инклудить в index.php и т.д, это знаю но вот как сделать так чтобы скрипт работал от админки, что надо и как написать? Если есть уже мануалы помогите советом или как либо. Спасибо.
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Re: Помогите Пару Вопросов

    начни с авторизации, пожалуй =)
     
  3. pircul

    pircul Активный пользователь

    С нами с:
    14 янв 2014
    Сообщения:
    100
    Симпатии:
    0
    Re: Помогите Пару Вопросов

    1. Сделайте единую точку входа на сайте(что бы все запросы обрабатывались в одном файле).
    2. В этом же самом файле делайте проверку
    SELECT `mode` FROM `sitemode`
    И дальше проверяйте, if($row['mode'] == 'disable') exit('Обслуживание сайта отключено администратором');
    Ну а в админке например по чекбоксу записывайте значение в таблицу sitemode, если есть чекбокс, то enabled, если нет, то disabled
     
  4. kritskiy

    kritskiy Новичок

    С нами с:
    19 янв 2014
    Сообщения:
    18
    Симпатии:
    0
    Нет Админку хотел бы написать для айпи то есть сайт не хотел бы записывать к базе.
    Можно чуть подробней объяснить, я маловато понимаю еще, пока открытыми тегами пользуюсь.
    Ну пример вот что из этого надо убрать или добавить чтобы этот файл обратился к dbconf.php и занес туда команду true или false.
    <?
    $do = $_GET["do"];
    if($sat_on)
    $sat_on5 = "checked";
    if($do == 'save'){
    $sat_on1 = $_POST['sat_on'];

    if($sat_on1 != 'true')
    $sat_on1 = 'false';

    $Put = '<?php $sat_on = '.$sat_on1.'; // Включение/Выключение Сайта ?>';
    $ff = fopen("dbconf.php", "w+");
    if (fwrite($ff,$Put))
    echo "<h4>Сохранено.</h4><meta http-equiv='Refresh' content='1;URL=?act=onOffPage'>";
    else
    echo "<h4>Произошла ошибка.</h4><meta http-equiv='Refresh' content='1;URL=?act=onOffPage'>";
    fclose($ff);
    }
    ?>
    <link rel="stylesheet" type="text/css" href="bootstrap/css/checkbox.css">
    <form action="?act=onOffPage&do=save" method="post">
    <table cellpadding="0" cellspacing="2" border="0" class="">
    <tr>
    <td>
    <table class="table table-bordered" align="cetner" >
    <tr>
    <td colspan='2' align='center'><b>Настройки</b></td>
    </tr>
    <tr>
    <td>Включение/выключение</td>
    <td>
    <section>
    <div class="slideThree">
    <input type="checkbox" name="sat_on" id="sat_on5" value="true" <?echo $sat_on5?> />
    <label for="sat_on5"></label>
    </div>
    </section>
    </td>
    </tr>
    <tr>
    <td colspan="2" align="center"><input type="submit" value="Сохранить"/></td>
    </tr>
    </table>
    </td>
    </tr>
    </table>
    </form>
     
  5. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    если через бд не хочешь работать, то проверяй наличие файла какого-нить который ты будешь специально создавать.
     
  6. kritskiy

    kritskiy Новичок

    С нами с:
    19 янв 2014
    Сообщения:
    18
    Симпатии:
    0
    вот то что я дал можно через нее менять вкл откл сайта? понимаете я хочу сделать кнопку вкл откл чтобы она отправила в файл dbconf.php мое решение, и считывала с dbconf.php какой сайт вкл или выкл на данный момент, и дал два скрипта помогите подправить, я мало понимаю еще в php, одну функцию прошу вас помочь дальше буду пробовать сам.
     
  7. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    тут помогут научиться. хочешь чтобы тебе дали готовое решение для твоих сайтов - либо за деньги, либо иди в разел бесплатной помощи.
     
  8. kritskiy

    kritskiy Новичок

    С нами с:
    19 янв 2014
    Сообщения:
    18
    Симпатии:
    0
    Дак я и прошу помощи, научите меня, скажите что не так?
    или дайте мануал который бы помог мне с этим, я готов учится этому я хочу давно php изучить но получается не очень.
     
  9. pircul

    pircul Активный пользователь

    С нами с:
    14 янв 2014
    Сообщения:
    100
    Симпатии:
    0
    http://php.ru/manual/language.basic-syntax.html
    Каждый раздел слева содержит свои подразделы(увидите с правой части). Читайте по одному, это минимум что Вы должны знать при создании сайтов

    И запомните, сделать чекбокс который что то там делает это не значит что Вы знаете php... если хотите изучать php как язык то читайте официальный мануал на сайте php.net. А если что то не понятно тогда читайте статьи, обращайтесь на форум...

    Добавлено спустя 1 минуту 35 секунд:
    Через $_GET запрос как Вы осуществляете on/off сайта можно спокойно отключить Ваш сайт без Вашего ведома хотя бы потому, что нет авторизации и разделения прав действий и добраться туда может кто угодно.

    Добавлено спустя 1 минуту 20 секунд:
    А объяснить как все должно быть устроено хотя бы по минимуму в двух словах не получится.. вывод один - нужно изучать как не крути
     
  10. kritskiy

    kritskiy Новичок

    С нами с:
    19 янв 2014
    Сообщения:
    18
    Симпатии:
    0
    А
    Спасибо буду читать, а сейчас я так понимаю не помогут в простом? Я просто спросил что я не так намудрил. Переменная не сохраняется или не отправляется, ну в общем не могу понять что и как, вот решил к знающим людям обратится за помощью.
     
  11. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    ну я помог тебе. сказал простую операцию. проще только код за тебя написать. но ты и сам справишься. просто думай что ты хочешь, разбивай на этапы.
     
  12. kritskiy

    kritskiy Новичок

    С нами с:
    19 янв 2014
    Сообщения:
    18
    Симпатии:
    0
    Нашел Свою ошибку, переписал, теперь другой вопрос, скажите как получать данные с dbconf.php ну например я вкл или выкл сайт и в админку выводит мое решение, то есть статистику на данный момент вкл или выкл сайт. Спасибо.
     
  13. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Не понял.
     
  14. kritskiy

    kritskiy Новичок

    С нами с:
    19 янв 2014
    Сообщения:
    18
    Симпатии:
    0
    ну пример есть админка она заносит данные в конфиг и перед занесением считывает старые данные с конфига и показывает.
    ______
    190000
    ______
    в конфиге
    ______
    190000
    ______
    в админке Отображается
    у меня получается так
    ______
    190000
    ______
    в конфиге
    ______

    ______
    в админке
    как сделать чтобы данные заносились туда?
     
  15. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    ну чувак, ну ты б хоть код показал. никто не знает, что там и почему может быть. может просто нет файла или нет прав на чтение его?
     
  16. kritskiy

    kritskiy Новичок

    С нами с:
    19 янв 2014
    Сообщения:
    18
    Симпатии:
    0
    Конфиг
    <?php
    $sat_on = true; // Включение(true)/Выключение(false) Сайта
    $db_reg = "127.2.0.1";
    $db_serv = "127.2.0.1";
    $port_reg = "97";
    $port_serv = "3362";
    ?>
    Админка
    <?php
    if(!$_SESSION['admin'])
    $do = $_GET["do"];
    if($sat_on)
    $sat_on5 = "checked";
    if($do == 'save'){
    $sat_on1 = $_POST['sat_on'];
    $db_reg1 = $_POST['db_reg'];
    $db_serv1 = $_POST['db_serv'];
    $port_reg1 = $_POST['port_reg'];
    $port_serv1 = $_POST['port_serv'];
    if($sat_on1 != 'true')
    $sat_on1 = 'false';

    $Put = '<?php
    $db_reg = "'.$db_reg1.'";
    $db_serv = "'.$db_serv1.'";
    $port_reg = "'.$port_reg1.'";
    $port_serv = "'.$port_serv1.'";
    $sat_on = '.$sat_on1.'; // Включение(true)/Выключение(false) Сайта
    ?>';
    $ff = fopen("dbconf.php", "w+");
    if (fwrite($ff,$Put))
    echo "<h4>Сохранено.</h4><meta http-equiv='Refresh' content='1;URL=?act=onOffPage'>";
    else
    echo "<h4>Произошла ошибка.</h4><meta http-equiv='Refresh' content='1;URL=?act=onOffPage'>";
    fclose($ff);
    }
    ?>

    <center><link rel="stylesheet" type="text/css" href="checkbox.css">
    <form action="?act=onOffPage&do=save" method="post">
    <table cellpadding="0" cellspacing="2" border="0" class="">
    <tr>
    <td>
    <table class="table table-bordered" align="cetner" >
    <tr>
    <td colspan='2' align='center'><b>Настройки</b></td>
    </tr>
    <tr>
    <tr>
    <td>Айпи Регистрации</td>
    <td><input type="text" name="db_reg" value="<?echo $db_reg?>"/></td>
    </tr>
    <tr>
    <td>Айпи Сервера</td>
    <td><input type="text" name="db_serv" value="<?echo $db_serv?>"/></td>
    </tr>
    <tr>
    <td>Порт Регистрации</td>
    <td><input type="text" name="port_reg" value="<?echo $port_reg?>"/></td>
    </tr>
    <td>Порт Сервера</td>
    <td><input type="text" name="port_serv" value="<?echo $port_serv?>"/></td>
    </tr>
    <tr>
    <td>Включение/выключение</td>
    <td>
    <section>
    <div class="slideThree">
    <input type="checkbox" name="sat_on" id="sat_on5" value="true" <?echo $sat_on5?> />
    <label for="sat_on5"></label>
    </div>
    </section>
    </td>
    </tr>
    <tr>
    <td colspan="2" align="center"><input type="submit" value="Сохранить"/></td>
    </tr>
    </table>
    </td>
    </tr>
    </table>
    </form>
    Вот Скрипт, айпи заносит сайт вкл все работает, но не считывает те данные что сейчас сайт вкл или какие айпи записал непонятно почему дайте совет поля в админке пустые.
     
  17. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.251
    Адрес:
    там-сям
    твой код будет выглядеть намного няшнее, если ты заключишь его в ббкод [code=php]…[/code]
     
  18. kritskiy

    kritskiy Новичок

    С нами с:
    19 янв 2014
    Сообщения:
    18
    Симпатии:
    0
    Хорошо учту, а по сути что можно дописать сюда чтобы получать данные?
     
  19. smitt

    smitt Старожил

    С нами с:
    3 янв 2012
    Сообщения:
    3.166
    Симпатии:
    65
    Расмешил :)

    Нажми на редактирование и сделай нормальное выделение кода.
    И еще раз в чем проблема. Я не понимаю :)
     
  20. smitt

    smitt Старожил

    С нами с:
    3 янв 2012
    Сообщения:
    3.166
    Симпатии:
    65
    Код (PHP):
    1. $sat_on = '.$sat_on1.';  
    Сейчас глянул тут должна быть ошибка, для чего это? Что ты хотел сделать?
     
  21. kritskiy

    kritskiy Новичок

    С нами с:
    19 янв 2014
    Сообщения:
    18
    Симпатии:
    0
    ну как бы делал так что получать данные пример.
    весь код надо копировать было вам.
    $Put = '<?php
    $db_reg = "'.$db_reg1.'";
    $db_serv = "'.$db_serv1.'";
    $port_reg = "'.$port_reg1.'";
    $port_serv = "'.$port_serv1.'";
    $sat_on = '.$sat_on1.'; // Включение(true)/Выключение(false) Сайта
    ?>';
    Эти данные обрабатываются и отправляются в конфиг.
    скрипт работает нормально я бы хотел что-бы он выводил данные в админку те что написаны в конфиге, а так скрипт работает.
     
  22. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    чувак, тебе надо хорошо подумать над тем, что ты делаешь. Ты отдаёшь себе отчет в своих действиях?
     
  23. kritskiy

    kritskiy Новичок

    С нами с:
    19 янв 2014
    Сообщения:
    18
    Симпатии:
    0
    А что не нравится? Можно без флуда просто подсказать и все, дальше я сам. Я спросил только то что не могу считать данные с конфига и все, зачем флудить тем что зачем да почему и как так делаю ,так захотелось мне и спросил у людей которые не первый год работают в этой сфере. Подскажите просто если знаете и все зачем постится пустыми словами, чувак не чувак, если знаете помогите, я в новичках спрашиваю потому что не считаю себя заявленным программером php.

    Добавлено спустя 13 минут 46 секунд:
    то что я кинул я понимаю что там написал но думаю вам не надо это объяснять, просто помогите чтобы данные в админке показывали мои данные с конфига

    Добавлено спустя 3 минуты 51 секунду:
    <center><link rel="stylesheet" type="text/css" href="checkbox.css">
    <form action="?act=onOffPage&do=save" method="post">
    <table cellpadding="0" cellspacing="2" border="0" class="">
    <tr>
    <td>
    <table class="table table-bordered" align="cetner" >
    <tr>
    <td colspan='2' align='center'><b>Настройки</b></td>
    </tr>
    <tr>
    <tr>
    <td>Айпи Регистрации</td>
    <td><input type="text" name="db_reg" value="<?echo $db_reg?>"/></td>
    </tr>
    <tr>
    <td>Айпи Сервера</td>
    <td><input type="text" name="db_serv" value="<?echo $db_serv?>"/></td>
    </tr>
    <tr>
    <td>Порт Регистрации</td>
    <td><input type="text" name="port_reg" value="<?echo $port_reg?>"/></td>
    </tr>
    <td>Порт Сервера</td>
    <td><input type="text" name="port_serv" value="<?echo $port_serv?>"/></td>
    </tr>
    <tr>
    <td>Включение/выключение</td>
    <td>
    <section>
    <div class="slideThree">
    <input type="checkbox" name="sat_on" id="sat_on5" value="true" <?echo $sat_on5?> />
    <label for="sat_on5"></label>
    </div>
    </section>
    </td>
    </tr>
    <tr>
    <td colspan="2" align="center"><input type="submit" value="Сохранить"/></td>
    </tr>
    </table>
    </td>
    </tr>
    </table>
    </form>
    Это шаблон он в админке он пустой когда его запускаешь должны вписываться данные какие забиты в конфиг скрипт
    типо такие
    Айпи Регистрации 127.2.0.1
    Айпи Сервера 127.2.0.1
    Порт Регистрации 97
    Порт Сервера 3362
    а там пусто если пишу любые айпи или порты он сохраняет но не отображает после я бы хотел чтобы он отображал как это сделать мне что не так мог написать? или что дописать?
     
  24. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    ну тогда сам, сам...

    Добавлено спустя 48 секунд:
    через БД работай, а то так долго будешь трахаться с файлами и прочим.
     
  25. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.600
    Симпатии:
    1.764
    Не, ну бывает, что конфиг из админки пишется прямо в php-файл. Joomla так делает, например.