За последние 24 часа нас посетили 20550 программистов и 1103 робота. Сейчас ищут 830 программистов ...

Помогите закончить проект Кому не лень

Тема в разделе "Сделайте за меня", создана пользователем kinlok, 15 июл 2017.

  1. kinlok

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

    С нами с:
    18 мар 2017
    Сообщения:
    50
    Симпатии:
    0
    Вк мастер или как говорят Платформа вк.
    Готово 1% (Регистрация, статус)

    скачать https://cloud.mail.ru/public/36Dm/NLqW92HVv

    ----------------
    Установка: выгрузить все с папки vk-master на сервер.
    Зайти в model и прописать данные в файле startup.php бд
    Заменить домен на свой: Начальный домен стоит localhost (вроде)
    Платформа vk.com
    ==

    У меня нет доступа к конфигам. Не могу запустить функцию "flush()", из - за этого каждая
    страница при запросе через фрейм не будет моментально отображатся, страница будет отображена
    после полной загрузки. У меня на локалхосте все работает нормально.
    Платформа вся на ООП, MVC.

    Протестировать, конечно, на высокие нагрузки не получилось.

    -- из того, что реализовано --
    - Платформа.
    - Регистрация.
    - Вывод всех пользователей с меткой онлайн.
    - Вывод профайлов.
    - Изменение статуса у пользователей.

    Были уже наработки long polling на XMPP, memcached.

    Все реализованно на оригинальном ВК-шном javascript коде.

    Первый этап был изучить common.js, кому интересно можете почитать, весь файл прокомментировал.

    Каждый переход по ссылке на сайте реализован на "high load", так - как и на оригинальном сайте ВК.
    При переходе по ссылке, страница запрашивается с параметром al = -1, ответ приходит во фрейм и там он уже парсится и
    вставляется в контент (html) страницы, выполняется текущий JS код.

    Каждая страница поддерживает 3 варианта вывода: прямой запрос на страницу, al=1, al=-1. При этом независимо от того
    как на каждой страницы построенна логика вывода, страница отдается автоматически в нужном варианте вывода.

    al = -1 - (обычная загрузка страниц через фрейм) ответ(вся реализация) во фрейме.
    al = 1 - (обычный ajax запрос) ответ через сплиты "<!>".

    -- Дальше распишу как это работает и как это использовать --

    При запросе страницы с пар. al=-1 для фрейма,
    в нужном методе act при вызове метода view загрузки
    конкретного html шаблона можно передать во 2 пар. массив forFrame.
    Если массив будет передан, то после генерации этого шаблона он будет
    немедлено вставлен и выведен во фрейм не дожидаясь полной загрузки.
    -- Пример --
    ```php
    $test = $this->view('test/v_test.php', array(
    'content' => $mTest, // (Пример) переменная c данными для генерации.
    'forFrame' => array(
    'to' => 'ID', // id элемента куда будет вставлен этот html шаблон.
    'js' => 'CODE' // (НЕ объязательный пар., если пар. не передан ставится null) js код который будет выполнен при вставке html шаблона.
    )
    ));
    ```
    Если при запросе страницы с al=-1, forFrame не будет передан в генерацию нужного
    html, то этот html вставлен во фрейм не будет, его нужно вставлять в ручную
    в основной шаблон, и при окончании загрузки страницы он будет выведен уже
    в основном шаблоне.
    Пример реализации можно посмотреть в test.php
    Сам механизм вставки я реализовал рекурсивным вызовом метода view.
    Проще было бы реализовать с помощью прослушки глобальной переменной (стека)
    куда бы при вызове view складывался весь вывод, а при прослушки вставлять
    в основной шаблон фрейма этот html не дожидаясь полной загрузки страницы,
    получилось бы лучше, но для этого нужна многопоточность,
    а в php она кривая и требует больших ресурсов =(

    -- Вся структура проекта, директории --
    - core -- ядро, сам фреймворк.
    - css -- статика
    - images -- статика
    - inc -- Вспомогательные классы. Для разделения логики.
    - js -- статика
    - lang -- Все переводы.
    - model -- Менеджеры работы с базой данных. Менеджер работы с пользователями называется M_Users.php,
    там все прокомментированно. Кому интересно - читайте.
    - view -- весь html и js для генерации и вставки.
    Каждая папка внутри view именуется как файл в который будет подключен вид,
    внутри нее файлы с html видом и папка JS для генерации текущего JS кода.
    Все файлы именуются так: v_test_index.php
    v - Для наглядности, что это вид.
    test - ИМЯ ФАЙЛА В КОТОРЫЙ ВИД БУДЕТ ПОДКЛЮЧЕН.
    index - ИМЯ ЭКШЕНА В КОТОРЫЙ ФАЙЛ БУДЕТ ПОДКЛЮЧЕН.
    Файлы в папке JS именуются по такой же схеме, только с префексом "js_" вместо "v_".
    - В корне проекта находятся контроллеры. (Основные файлы, точки входа).

    Кто хочет, может почитать код, весь код прокомменировал.

    Хотелось бы и дальше реализовывать, но времени вообще нет, мне надо заниматься мобильной разработкой.

    Так же в корне находится файл vk.sql, для тех кто хочет залить себе и протестировать.

    Все это делал для закрепления своих знаний.
    настройка регистрации

    view\main\v_main_full.php 17 строчка меняем этат домен на свой interesniepodarki.ru
    view\widget\sideBar\v_login.php 2 строчка этат домен на свой interesniepodarki.ru
     
  2. username

    username Новичок

    С нами с:
    6 июл 2017
    Сообщения:
    225
    Симпатии:
    17
    нет смысла тратить время на вконтакте, который заблокирован в украине
     
  3. kinlok

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

    С нами с:
    18 мар 2017
    Сообщения:
    50
    Симпатии:
    0
    Причем здесь Украина?
     
  4. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.155
    Симпатии:
    1.769
    Адрес:
    :сердА
    Что это, Автор? Клон вконтактика или что? И да, когда готов 1%, то остальные 99% это не "помогите закончить", это "сделайте мне проект".
     
  5. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    :D

    полный фейерверк в голове! :D

    давно меня так посты не весилили
    --- Добавлено ---
    @kinlok ты вообще весь этот поток сознания где взял? =)
     
  6. kinlok

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

    С нами с:
    18 мар 2017
    Сообщения:
    50
    Симпатии:
    0
    сам делал
     
  7. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    я имел в виду твой пост, а не проект.
    забей
     
  8. Геннадий Попов

    С нами с:
    17 июл 2017
    Сообщения:
    6
    Симпатии:
    0
    Привет! Хороший раздел, полезный. Так что так никто и не поможет?
     
  9. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    чего? ты бот?
    --- Добавлено ---
    да стопудово бот. забанить.
     
  10. kinlok

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

    С нами с:
    18 мар 2017
    Сообщения:
    50
    Симпатии:
    0
    сам ты бот
     
  11. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
  12. kinlok

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

    С нами с:
    18 мар 2017
    Сообщения:
    50
    Симпатии:
    0
  13. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.410
    Симпатии:
    1.768
    сообщение невпопад, подходит к любому топику. Сказал и молчит.
     
  14. storms89

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

    С нами с:
    20 июн 2016
    Сообщения:
    59
    Симпатии:
    10
    в чем смысл то, что это вообще за мастер то такой, что он мастерит и причем тут вк?