Ответы пользователя по тегу PHP
  • Не могу юзать namespace?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    1) Что делает хтмл в коде класса? Про разделение кода и представления не слышали?
    2) Нэймспейсы придуманы для автозагрузки, по этому вывод их в первые строки файла обязателен
    3) Чтение документации сильно облегчает жизнь
    4) Чтение ошибок облегчает жизнь даже тем кто плохо читал документацию
    Ответ написан
    6 комментариев
  • Как собрать данные в одном месте?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Не могу прочесть, тут что-то на эльфийском... (с) Фродо


    Есть несколько сайтов на нативном php
    Я правильно понимаю что у вас есть доступ к коду (если такие подробности известны), но вы в нем не особо разбираетесь (так как что за данные и откуда вы не написали)?

    Есть главный сайт - crm, необходимо в базу этого сайта добавлять данные с других сайтов, в какую-то определенную таблицу
    Ну, допустим, то есть на других сайтах тоже бд? Или какие данные нужно добавлять?

    возможно ли вообще такое реализовать?
    Конечно, вопрос только что конкретно нужно и что конкретно вы сможете реализовать. Вариантов масса:
    - Написать парсер со стороны crm, по таймеру обновлять данные с сайтов
    - Написать апи для каждого сайта, и через него из crm запрашивать обновления
    - Написать апи на crm и на сайтах при добавлении отправлять дубль в апи crm
    - Тупо перенести нужные таблицы дампом с сайтов на сервер crm
    ну и еще куча идей, тут уже от кучи обстоятельств зависит как удобнее/проще делать...
    Ответ написан
  • Как автоматически выводить данные с полученного post/get запроса?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Каким-то образом у него сразу вывелся результат на страницу, сейчас приходится делать отдельную функцию для сохранения таких логов, можно ли как-то сразу показывать принятое без лишних телодвижений?
    Подозреваю что у вас не выводится var_dump() из-за буферизации вывода. Если хочется сразу увидеть вывод var_dump(), можно просто написать exit после него, скрипт завершится на этой точке и выведет все что нужно.
    Ответ написан
    Комментировать
  • Ajax подключённый к форме не работает?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    $('#form').on('submit',function (e) {
      e.preventDefault();
    ...
    Ответ написан
    2 комментария
  • В чем причина ошибки?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    1)
    expects parameter 1 to be mysqli_result, bool given
    ожидаем результат запроса, но получаем булеан. Почему? 99% кривой запрос, но этого мы не узнаем, так как кода нету. Для нормального отображения ошибок запросов, нужно добавить после соединения
    mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);

    2)
    Здесь уже проблема с хедером
    Да нет, с хедером все ок. Проблема что тут его уже нельзя отправить, так как вы что-то вывели в браузер (скорее всего как раз ошибку из п.1). Что легко гуглится (Результатов: примерно 6 170 000).
    Ответ написан
  • Что не так с регуляркой?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    #_adv_([\d]){1,4}_#gui
    Ответ написан
  • Выводит полностью код php что делать?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Вангую шорттеги...
    Ответ написан
    2 комментария
  • Как мне отобразить выключен ли элемент?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    <?php 
    $elements = (тут вытаскиваем из бд все элементы);
    ?>
    ...
    <?php 
    if($elements[35]['status'] ==1){?>
    <div class="absolute top-[514px] left-[30px]" style="transform: rotate(15deg);">
    ...
    <?php } ?>
    Ответ написан
    2 комментария
  • Стоит ли работать с Drupal в 2022?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    А че, есть другие предложения? Если есть - лучше отказаться, если нет - идите куда берут и ищите другую работу, это нормально и правильно. В начале пути желательно как можно больше практики, и хорошо если эта практиука будет разной, будет возможность сравнить плохое с хорошим.
    Ответ написан
    3 комментария
  • Как составить запрос MYSQL чтобы посчитать разницу посещений за интервал времени?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Проблема системная, а не программная. Нельзя хранить ненормализованные данные, в вашем случае на каждую дату должно быть количество посещений, а не накопительная сумма, если вы хотите какую-то статистику. Вы можете завести отдельный инкрементный счетчик для сущности (что тоже в принципе денормализация, но хотя бы оправданная), но посещения по дням должны отражать посещения за этот день, а не черте что...
    Ответ написан
  • Как сделать ссылку jQuery в PHP коде, который обновит страницу с новыми GET параметрами?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Задумался над тем, что бы попробовать перевести свою страницу на формат без перезагрузки всей страницы, а лишь ее основы внутри.
    Это называется SPA (single page application), и не всегда это хорошая идея.

    Все сводится к тому, что делать нужно это на Jquery.
    Плохая идея, для этого есть совершенно другие, более подходящие инструменты - react, vue...

    Но после этого страница не перезагружалась, а просто принимала эти данные и обновляла информацию на всей странице, выводя пользователю эту же страницу, но с новыми результатами?
    В общем случае используют несколько приемов: Урл подменяют с помощью history pushState, запросы отправляют через fetch или средствами фреймворка, бэкенд при этом обычно отдает не хтмл, а json, по сути передавая только нужные данные, из которых фронтенд строит уже нужный хтмл из компонент.
    Ответ написан
    1 комментарий
  • Как убрать ограничение в 1M на загрузку файлов?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    php.ini
    memory_limit = 32M
    upload_max_filesize = 32M
    post_max_size = 32M

    так же, неплохо бы проверить что вы редактируете нужный php.ini, запустив phpinfo() и проверив путь до php.ini, в вашем конфиге указан /etc/php/7.4/fpm/php.ini

    nginx.conf
    client_max_body_size 32M;
    Bash:
    /sbin/nginx -s reload
    или
    sudo systemctl reload nginx.service

    Сейчас же в конфиге php стоит 8мб, ровно столько же отображается если сделать phpinfo();
    63d0fe614a517216751258.jpeg
    Ответ написан
    1 комментарий
  • Зачем нужна сортировка пузырьком?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Но зачем писать этот сложный алгоритм, когда можно сделать как в коде ниже
    и результат будет тот же.
    Уверен что данный алгоритм был приведен для примера или в образовательных целях. Здесь важен не код, а алгоритм, по которому работает сортировка. Во всех функциях сортировки внутри функция, похожая на пузырьковую сортировку, в той или иной степени, просто написанная на C и скомпилированная в виде готовой функции. Подробнее можно посмотреть тут.
    Ответ написан
    3 комментария
  • Почему php скрипт не записывает логи с .txt файл?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    ini_set('error_reporting',E_ALL);
    ini_set('display_errors', 1);
    file_put_contents("ip.txt", date('Y-m-d H:i:s') . ' : ' $_SERVER['REMOTE_ADDR']."\n" , FILE_APPEND);
    Ну и смотрите ошибки, скорее всего права кривые.
    Ответ написан
    2 комментария
  • Не загружается файл на сервер php?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    1)$path = "../imagepost/".$_FILES['photo']['name'];так делать нельзя, путь надо писать абсолютный.
    2)
    if($_COOKIE['user'] == ''){
      echo 'У вас нету аккаунта(';
      exit;
    }
    Проверка куки на логин это даже не смешно. Я сам у себя могу установить любые куки, и все, я уже залогинен, нормально?
    3) Ну и где вы этот файл переносите в рабочую папку?
    Ответ написан
    9 комментариев
  • Первый раз форма срабатывает, второй раз обновление страницы AJAX?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Судя по коду, вы при редактировании создаете новую форму. Так как биндинг события происходит по загрузке документа, а форма создается после этого, соответственно событие на свежесозданной форме не будет отслеживаться и форма просто срабатывает стандартно. Меняйте биндинг на делегирование, то есть отслеживайте событие document.
    Ответ написан
  • Почему не отправляется запрос API?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    В курле я указал эти параметры, сообщение не отправляется, но.
    Если я сам вписываю сообщение вместо переменной $fsend, оно отправляется.

    CURLOPT_URL => 'https://api.lalala.com/v1/messages?client_id='.$fid.'&text='.urlencode($fsend),
    Ответ написан
    6 комментариев
  • Что может содержать DTO?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Что может пойти не так, что DTO от такой логики будет уже не DTO и какие могут быть проблемы?
    DTO - чисто инструмент переноса, в классическом ООП он выполняет роль сигнала для взаимодействия между абстрактными сущностями. По этому его задача хранить данные, а логика его построения должна быть отделена. Если у вас 10 дтошек, и что-то поменялось в логике построения, вы будете все десять штук менять, что уже выглядит странно и не очень логично. Напрашивается логичное решение - использовать фэктори, которая, в противовес дто, имеет только логику, и все манипуляции с данными сводятся в 1 место. Пишете фэктори, и на каждый источник у вас свой фабричный метод, а на выходе нужный дто.
    Ответ написан
    Комментировать
  • Как можно в string заменить текст на enter?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Смотрите доку по работе со строками. В частности использование кавычек для интерпретации переменных и спец. последовательностей.
    Ответ написан
  • Как в React отследить вебхук с сервера и отрисовать сообщение?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Вебхук инициализируется сторонним сервером, по этому опрашивать его не надо. Как пример - платежные системы.

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

    Что дальше делать с этими данными уже ваше дело, можно прямо из этого скрипта послать сообщение в приложение, можено записать в бд и по таймеру запрашивать об обновлении бд с клиента...
    Ответ написан
    2 комментария