• Laravel realtime data?

    @Ka4_Piton Автор вопроса
    Ведь не извлекать значения из html элементов. Это будет совсем перебор, нет?
  • Laravel realtime data?

    @Ka4_Piton Автор вопроса
    Ну мне ещё нужно изменить положение клиента в общем списке. А значит нужно хранить где-то всю информацию, потом обновлять ее и перерисовывать ui всем клиентам. Все время делать запрос с базы не вариант, не буду же я на каждый чих по 100к записей выбирать из базы, одним скопом и отдать это дело всем клиентам. Вот и стоит вопрос где все это хранить да так, чтобы в тот же миг передать обновленные данные всем клиентам.
  • Laravel realtime data?

    @Ka4_Piton Автор вопроса
    Вячеслав Плиско, смотрите, первый пункт - это минимальная задержка с обновлением информации. Чем меньше, тем лучше. Нужно, чтобы все клиенты получали обновленную информацию одновременно.

    Основная идея в том, что может быть, скажем 500 клиентов и 3000 товаров = 1500000 записей в базе и мне нужно эту информацию выдать всем 500 клиентам, без задержек и так, чтобы сервер не захлебывался. Я не могу сделать, что-то вроде - select * from table, отсортировать и отправить эти данные клиенту, по скольку - эти данные могу иметь огромный размер. И быстро передать их клиенту не получиться. Более того, я не понимаю как можно передать большое кол-во данных асинхронно, очевидно, что тот же пушер может вместить в себя 10КБ информации, а данных в базе, может быть на 2,3-20Мб.
    Вообщем, нужно быстро, отобразить все данные из базы и обновить их у всех клиентов, сразу как только хоть один из клиентов изменит цену
  • Laravel realtime data?

    @Ka4_Piton Автор вопроса
    Потом разсылать всем клиентам, эти значения и перерисовывать таблицу. А вариант с локал сторедж - вполне себе решение, верно?
  • Обработчик запросов от N ботов телеграмма?

    @Ka4_Piton Автор вопроса
    Дмитрий, Все так. Я просто хотел уйти от знания о url на котором у меня висит веб хук. Ибо апи ключи добавляються в базу, в неограниченном обьеме. Хотелось, просто записывать в базу ключ, никнейм бота и уже с этим работать.

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

    Вообщем, тот пример кода, который я написал в самом вопросе, в корне не верный?
  • Обработчик запросов от N ботов телеграмма?

    @Ka4_Piton Автор вопроса
    Видимо я не понмиаю основ. Получаеться, чтобы получить ответ от телеграма, мне нет нужны
    в подобного рода конструкии. и по боьшему счету, это необходжимо, только если я хочу отправить сообщение?
    public function hendle()
        {
            $telegram = new Api('Ключ');
            $updates = $telegram->getWebhookUpdates();
        }


    Я уже проверил и следующей конструкции, достаточно, чтобы получить вполне содержательный ответ.

    public function hendle(Request $request)
        {
            dd($request->all());
        }


    Но есть одна проблема, мне нужно, чтобы бот представлялся и я мог увидеть его username. По скольку я должен понимать с каким ботом, какой пользователь взаимодействует. К тому же, я должен отправлять сообщения пользователям. А той информации, что приходит в переменной $request явно для этого не достаточно. Есть идеи, как я могу это сделать?
  • Есть ли практические бесплатные видео уроки по Laravel 5?

    Плохие практики. Почему нужно все делать в контроллере то? А как же MVC и принцип единственной ответственности?
  • Разбиение строки по условию?

    @Ka4_Piton Автор вопроса
    Изначально, задача казась сложной, ввиду отсутствия опыта. Но поразыслив, все решилось довольно быстро.
    $lines = preg_split ('/$\R?^/m',  $preorder[1]);
            $arrays = array_chunk($lines,100);
            $new_line = [];
            foreach($arrays as $key => $value) {
                $new_line[] = implode("\r\n",$value);
            }

    А относительно вашего кода, часть строки можем иметь следующий вид

    строка
    строка
    строка

    строка

    строка
    строка
    строка
    строка

    строка
    строка
    строка

    Ваш вариант убирает все пустые строки, что по факту меняет изначальный вид строки и приводит ее к следующему виду.

    строка
    строка
    строка
    строка
    строка
    строка
    строка
    строка
    строка
    строка
    строка
  • Нужен совет по вебсокетам?

    @Ka4_Piton Автор вопроса
    Спасибо за содержательный ответ. Изначально я хотел обойтись малой кровью и отправлять всю страницу через веб сокет. Но сейчас понимаю, сколь глупым решением это было. Значит буду перестраивать таблицу и пользователей в ней на клиенте. Ну и ко всему прочему, я думаю, что лимитов Pusher, который я уже использую для начала, будет за глаза, даже на бесплатном тарифе. Ну а по мере необходимости уже решу, что будет удобнее.
  • Нужен совет по вебсокетам?

    @Ka4_Piton Автор вопроса
    sim3x, вы правы, но на деле, почти все пользователи в основном добавляют технику эппл и как правило они заполняют примерно одно и тоже. Например, одних только iphone 8, будет около 200 позиций, ибо они разделяються на цвет, память и страну. А в списке есть все айфоны от 5 до xs.
  • Нужен совет по вебсокетам?

    @Ka4_Piton Автор вопроса
    sim3x, нет, выигрывает тот у кого цена ниже
  • Нужен совет по вебсокетам?

    @Ka4_Piton Автор вопроса
    sim3x, для того, чтобы пользователь смог отреагировать на свое местоположение в этой таблице и изменить цену, дабы поднять выше
  • Нужен совет по вебсокетам?

    @Ka4_Piton Автор вопроса
    sim3x, смотрите, каждый поставщик имеет общий список товаров. Что-то вроде шаблона, все что он может изменять - это кол-во и цену. Всего 2 значения. А на другой странице, выводиться значения из базы. Это 1 запрос из которого составляеться одна большая таблица, в которой отображаеться имя поставщика, а в нем вложены товары.
    Более того, 2 разных поставщика могут добавить 300 одинаковых товаров, но указать разное кол-во и цену. А еще 3 других поставщика могут добавить 900 товаров. И все эти данные будут выгружены одним запросом, по скольку нужно отобразить сразу всю таблицу. Плюс на странице с этой таблицей, в цикле из браузера посылаеться асинхронный запрос, на который сервер отвечает всеми записями, которые добавлены в базу и отдает их в виде html (только таблица). Ну и аякс, получая ответ рендерит все это дело.

    А пользователей в среднем 15 и каждый добавляет по 100 - 1000 товаров. Ну и соответственно, каждый пользователь делает запрос в базу на выборку. Если посчитать то получаеться 1 очень большой запрос. И самое плохое, нельзя использовать пагинацию и разбивать запрос на части, ровно как и нельзя при скроле страницы подгружать значения(опять таки, разбивая запрос на части). Нужна сразу вся таблица с информацией о всех пользователях и добавленныъх ими товаров.
  • Нужен совет по вебсокетам?

    @Ka4_Piton Автор вопроса
    Значит - это нормально, отправлять запросы с клиента в цикле. Это правда правильный путь для получения риалтайм информации?
  • Laravel и данные в отношения?

    @Ka4_Piton Автор вопроса
    Так и поступил
  • Laravel и данные в отношения?

    @Ka4_Piton Автор вопроса
    5c46394e1d266837425190.png

    Выходит так, что на каждой итерации, сумма неустойки прибаляеться к значению в предыдущей итерации.
  • Как найти корневой элемент?

    @Ka4_Piton Автор вопроса
    0xD34F, до того, как поломал, я получал null
  • Как найти корневой элемент?

    @Ka4_Piton Автор вопроса
    0xD34F, id не могут быть строками, я понимаю, что '0' !== 0, массив я передал, но тут дело вот в чем. Если изменить ваш пример
    function getRootIndex($id, $array) {
                $parent = '';
                foreach ($array as $key => $item) {
                    if ($item['id'] === $id) {
                        $parent = $item['parent'];
                        $parent === 0 ? $key : getRootIndex($parent, $array);
                    }
                }
                return (int)$parent;
            }

    getRootIndex(4, $cats);
    Результатом будет 2, хотя должно быть 1. Поскольку для элемента с id 4, родителем будет элемент с id 2, а у него в свою очередь родитель имеет id 1.
    Обьясните пожалуйста вот эту строку
    $parent === 0 ? $key : getRootIndex($parent, $array);

    Понятно,что это сокращенная запись if else. Если у нас $parent === 0, то $key. Но какую роль, здесь выполняет $key? Спасибо!
  • Как найти корневой элемент?

    @Ka4_Piton Автор вопроса
    Ваше решение отдает null, какой бы id я не указал в качестве аргумента
  • Как найти корневой элемент?

    @Ka4_Piton Автор вопроса
    Вершин может быть несколько, элементов с значением 'parent' => 0, может быть сколь угодно много.