• Как определить реферальный код?

    @iproman
    Пишу на всём что движется.
    Определитесь.

    Вы хотите и контроллировать и разрешить людям самим создавать. Просто запретите генерацию собственных в админке. Сделайте кнопку для автогенерации, и покажите список снизу с кнопками удаления, копирования.

    Если вам нужна валидация по типу(A0000001), то делайте собственный regex.
    /([A-Z])([0-9])\d+/g

    Или иное, под ваш ЯП.
    Ответ написан
    Комментировать
  • Можно ли использовать модели из Yii2 в данном случае?

    @iproman
    Пишу на всём что движется.
    Есть наверное 2 пути, как я делаю с angular, думаю схоже и с vue.
    1. Yii2 отдает с помощью api результаты и далее уже работа отдельно на внешке angular'а
    2. Встраивать angular в виды yii2, контроллеры, стили и тд.

    И там и там есть свои плюсы, но мне по душе, 1 вариант.

    Создал по быстрому rest контроллеры, модели с связями, тесты с фикстурами, и полетело. Если нужно переопределяешь/создаешь действия помимо default crud.

    И ловишь это всё на фронте angular, и разруливаешь где какие данные нужны через сервисы с запросами на backend.

    Не ищи готовое, попробуй написать сам. И поймешь как, что, с чем варить, и прочие нюансы, которые при копировании не уловить.
    Ответ написан
    Комментировать
  • Диагностика компьютера на PHP?

    @iproman
    Пишу на всём что движется.
    У браузера есть основной доступ к инфе компа, которые передаются через заголовки, но не более.

    Вкратце, список действий.
    1. Сайт, где юзер нажимает к примеру кнопку `Получить состояние компьютера`
    2. Качается программа, которую юзеру нужно запустить
    3. После диагностики, прога передает на сайт все характеристики ПК.


    Опять же нужно заслужить доверие юзера, что ты его не хакнешь.

    Поправьте если ошибся, буду благодарен.
    Ответ написан
    Комментировать
  • Как спарсить страницу с кодировкой windows-1251 и перекодируя ее в UTF-8?

    @iproman
    Пишу на всём что движется.
    $html_utf8 = mb_convert_encoding($html, "utf-8", "windows-1251");
    Ответ написан
    1 комментарий
  • Как сделать счетчик просмотра изображений?

    @iproman
    Пишу на всём что движется.
    К примеру в YII2, при открывании любой страницы вызывается метод (в действии контроллера).
    // Открыли картинку, увеличь счетчик на 1
    $model->updateCounters([
       'поле счетчика' => 1,
    ]);


    В котором содержится
    public function updateCounters($counters)
        {
            if (static::updateAllCounters($counters, $this->getOldPrimaryKey(true)) > 0) {
                foreach ($counters as $name => $value) {
                    if (!isset($this->_attributes[$name])) {
                        $this->_attributes[$name] = $value;
                    } else {
                        $this->_attributes[$name] += $value;
                    }
                    $this->_oldAttributes[$name] = $this->_attributes[$name];
                }
                return true;
            }
            return false;
        }


    А на низком уровне, mysql запрос таков
    UPDATE `таблица` SET `поле счетчика`=`поле счетчика`+1 WHERE `id фотографии`=9


    На чистом php можно было бы написать так
    $connection = new PDO($dsn,$user,$pass,$options);
    $q = "UPDATE `таблица` SET `поле счетчика`=`поле счетчика`+1 WHERE `id` =`:photo_id`";
    $query = $connection->prepare( $q); 
    $query->bindValue( ':photo_id', $row["id"] );
    $query->execute();


    Может чем то поможет, успехов!
    Ответ написан
    Комментировать
  • Yii2 Elfinder http 500 error?

    @iproman
    Пишу на всём что движется.
    В моем случае, наследование происходило от Object, которое было невалидно с PHP 7.2, и было заменено на BaseObject после 2.0.13.

    Просто меняем
    SomeClass extends yii\base\Object

    на
    SomeClass extends yii\base\BaseObject
    Ответ написан
    1 комментарий