• Как вставить переменную из js в template.php и обновить страницу?

    Вам надо добавить селекту имя и как-то сабмитить форму с селектом (на выбор есть GET и POST). Соответственно, в скрипте значение выбранного города будет в одном из значений в массиве $_GET или в массиве $_POST .

    P.S. Правильно пишется "city". Учите английский, в будущем пригодится.
    Ответ написан
    Комментировать
  • Как быть если мне нужен объект Bitrix\Main\Application::getInstance()->getContext()->getRequest() в моем агенте?

    Нужно переделать функцию так, чтобы она принимала аргументы, а не брала значения из контекста запроса.
    Аргументы можно передавать явно при создани агента, а можно писать данные куда-то (в файл или БД) и передавать в функцию-агент только идентификатор записи, по которому она может получить всё нужное.

    Пытаться инициализировать полноценный Request внутри агента не стоит - это сложно и чревато багами (особенно, если сами агенты исполняются на хитах).
    Ответ написан
    Комментировать
  • Как с помощью php отдать react?

    ipatiev
    @ipatiev Куратор тега PHP
    Потомок старинного рода Ипатьевых-Колотитьевых
    Как я уже не раз говорил, чтобы получить ответ на свой вопрос, надо сначала разобраться с кашей у себя голове.
    Вас же на первом же шаге унесло не туда.

    jQuery уже в прошлом

    это правда

    его теснят фреймворки типа react

    а это уже чушь собачья
    jQuery - это был костыль, позволявший выполнять определенные задачи, которые было невозможно или слишком сложно выполнить на чистом JavaScript. Но уже больше 10 лет нужда в этом костыле полностью отпала
    К фреймворкам типа React этот костыль не имеет никакого отношения вообще.
    Для замены jQuery вам нужно просто выучить Яваскрипт.

    Реакт же - это, условно говоря, способ построения приложения. Его можно учить, а можно не учить. Вы можете продолжать использовать обычный подход, когда HTML рендерится на сервере в ответ на каждый запрос.

    При использовании реакта, сначала загружаются его статические файлы. обычно это делается через отдельный веб-сервер, на котором крутится приложение, написанное на js. и эту вашу проверку можно делать там.
    но в принципе вы можете отдавать их и РНР скриптом. HTML отдавать через РНР умеете? Ну вот и отдавайте.

    Но повторюсь, это только если вам действительно нужен реакт. А для замены jquery он не нужен.

    404й редирект

    для начала, такой вещи, как "404й редирект" в природе не существует.
    Бывает либо редирект (коды ответа 3хх), либо 404. Два НТТР статуса вы никогда не отдадите.

    при этом сама по себе дурацкая задача "если пользователь пришёл с определенного ip и ему нужно отдать 404" вообще никакого отношения к обсуждаемому вопросу не имеет. И решать ее по-хорошему надо на уровне веб-сервера. Если вообще надо, в чем есть большие сомнения.
    Ответ написан
    4 комментария
  • Как добавить всплывающее окно на сайт 1с битрикс?

    godsplane
    @godsplane
    1. Заходим на https://freelance.habr.com/
    2. Ищем исполнителя
    3. Оплачиваем заказ
    4. Получаем результат
    Ответ написан
    Комментировать
  • Как удалить все до и после второго символа?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Сначала заменяешь то, что внутри слешей вместе со слешами на что-то уникальное для этой строки (пробел например), потом делаешь сплит строки по пробелу.

    А вообще сделать строке explode по слешу и потом взять нулевой и последний элементы массива.
    Ответ написан
    1 комментарий
  • Как обновить сайт?

    GavriKos
    @GavriKos
    но наш сайт не поддерживает его

    сделать так, чтобы поддерживал.
    Ответ написан
    Комментировать
  • Выводит полностью код php что делать?

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Здравствуйте, у меня такая проблема, когда я создаю цикл в php у меня выводится еще одно значение
    Ох уж эти циклы проказники, бывает...

    Допустим у меня в БД есть 2 поле
    2 поле это что? Насколько видно из скринов, в структуре таблицы у вас 5 полей, и 2 записи в таблице. Вы про записи?

    и при выводе на страницу я получаю 4
    Смотрим глазками в разметку, считаем на пальчиках сколько раз мальчик написал test в одной итерации цикла? Загибаем 3 пальчика. Записываем в тетрадку 3 палочки. Далее смотрим что нам вывел цикл? Загибаем пальчики 3 на одной ручке, 3 на другой... Сколько ручек? 2! Пишем в тетрадку - вывелось 2 раза по 3. Вроде пальцы с палочками сошлись...
    Ответ написан
    2 комментария
  • PHP: чем отличается __DIR__ от dirname(__DIR__)?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    echo __DIR__ . PHP_EOL;
    // /home/user/scripts
    echo dirname(__DIR__) . PHP_EOL;
    // /home/user
    Ответ написан
    Комментировать
  • Как вывести время д.ч.м из миллисекунд в PHP?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    В одной секунде 1000 миллисекунд.
    В одной минуте 60 секунд.
    В одном часе 60 минут.
    В одних сутках 24 часа, но это не точно.
    Ответ написан
    1 комментарий
  • Почему поступает пустой запрос, и выдает ошибку?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Бросайте вы эти видеоуроки, они вас плохому научат.
    1. Не надо напрямую подставлять переменные в запрос, для этого есть плейсхолдеры. Читать про SQL Injection.
    2. Не надо руками ловить ошибки mysqli. Надо устанавливать правильные опции при подключении. Читать https://habr.com/ru/post/662523/
    3. Если уж вы ловите ошибки самостоятельно, то выводите полный текст ошибки, а не просто паническое "Ой, что-то случилось!".
    4. Не надо хранить в своей базе данные кредитных карт клиентов, да ещё и вместе с CVV. Учитывая пункт 1, это всё равно, что писать их на заборе. Читать про PCI DSS.
    Ответ написан
    4 комментария
  • Почему не могу подключить php к базе данных MySQL?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега PHP
    Посмотрите внимательно - у вас даже здесь подсветка кода ломается из-за синтаксической ошибки.
    - echo "id: " . $row["nickname"]. " - Name: " . $row["result"]. " . "<br>";
    + echo "id: " . $row["nickname"] . " - Name: " . $row["result"] . "<br>";
    Ответ написан
    Комментировать
  • Как обновить версию php на сервере,где расположен сайт на битриксе?

    toxa82
    @toxa82
    Как и для других сайтов. Ставишь новую версию пыхи, переключаешь апач/нджинкс на новую пыху. В зависимости от разницы между версиями, офигеваешь от сломанного сайта и ошибок. Откатываешься назад, ибо обычно просто так апнуть версию без изменения кода не получиться. Поднимаешь версию для разработки на тестовом сервере с новой пыхой, фиксишь/обновляешь код, потом выливаешь это на прод и обновляешь пыху снова. Если руки прямые и из плеч то должно получиться.
    Ответ написан
    Комментировать
  • Какие ограничения в PHP существуют?

    iMedved2009
    @iMedved2009
    Не люблю людей
    имя им легион
    php -i | egrep 'limit|timeout|max'


    hard_timeout => 2 => 2
    log_errors_max_len => 1024 => 1024
    max_execution_time => 0 => 0
    max_file_uploads => 20 => 20
    max_input_nesting_level => 64 => 64
    max_input_time => -1 => -1
    max_input_vars => 1000 => 1000
    memory_limit => -1 => -1
    post_max_size => 8M => 8M
    upload_max_filesize => 2M => 2M
    zend.exception_string_param_max_len => 0 => 0
    mbstring.regex_retry_limit => 1000000 => 1000000
    mbstring.regex_stack_limit => 100000 => 100000
    memcached.default_connect_timeout => 0 => 0
    memcached.sess_connect_timeout => 0 => 0
    memcached.sess_lock_max_wait => not set => not set
    memcached.sess_lock_wait_max => 150 => 150
    memcached.sess_server_failure_limit => 0 => 0
    mysqli.max_links => Unlimited => Unlimited
    mysqli.max_persistent => Unlimited => Unlimited
    Read timeout => 86400
    pcre.backtrack_limit => 1000000 => 1000000
    pcre.recursion_limit => 100000 => 100000
    pgsql.max_links => Unlimited => Unlimited
    pgsql.max_persistent => Unlimited => Unlimited
    session.cache_limiter => nocache => nocache
    session.gc_maxlifetime => 1440 => 1440
    default_socket_timeout => 60 => 60
    unserialize_max_depth => 4096 => 4096
    xdebug.connect_timeout_ms => 200 => 200
    xdebug.max_nesting_level => 256 => 256
    xdebug.max_stack_frames => -1 => -1
    xdebug.remote_timeout => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
    xdebug.var_display_max_children => 128 => 128
    xdebug.var_display_max_data => 512 => 512
    xdebug.var_display_max_depth => 3 => 3
    opcache.force_restart_timeout => 180 => 180
    opcache.jit_bisect_limit => 0 => 0
    opcache.jit_max_exit_counters => 8192 => 8192
    opcache.jit_max_loop_unrolls => 8 => 8
    opcache.jit_max_polymorphic_calls => 2 => 2
    opcache.jit_max_recursive_calls => 2 => 2
    opcache.jit_max_recursive_returns => 2 => 2
    opcache.jit_max_root_traces => 1024 => 1024
    opcache.jit_max_side_traces => 128 => 128
    opcache.max_accelerated_files => 10000 => 10000
    opcache.max_file_size => 0 => 0
    opcache.max_wasted_percentage => 5 => 5


    Вы явно пытаетесь что то не то.
    Ответ написан
    Комментировать
  • Почему не формируется массив из цикла по XML?

    irishmann
    @irishmann
    Научись пользоваться дебаггером
    Привет от выскочки
    62e24fde60a14322797359.png

    <?php
    $xmlstr = <<<XML
    <?xml version="1.0" encoding="utf-8"?>
    <!DOCTYPE yml_catalog SYSTEM "shops.dtd">
    <yml_catalog date="27 Jul 2022 18:25:14">
        <shop>
            <name>Официальный интернет-магазин KRUPS</name>
            <company>ООО "Фирменные решения"</company>
            <currencies>
                <currency id="RUB" rate="1"/>
            </currencies>
            <categories>
                <category id="7">Продукты</category>
                <category id="12" parentId="7">Кофеварки</category>
                <category id="11" parentId="12">Капельные кофеварки</category>
                <category id="2" parentId="7">Автоматические кофемашины</category>
                <category id="3" parentId="7">Рожковые кофеварки</category>
                <category id="5" parentId="7">Кофемолки</category>
                <category id="10" parentId="7">Капсульные кофемашины</category>
                <category id="4" parentId="10">Nescafe Dolce Gusto</category>
                <category id="9" parentId="10">Nespresso</category>
                <category id="6">Аксессуары</category>
                <category id="8" parentId="6">Аксессуары для кофемашин</category>
            </categories>
        </shop>
    </yml_catalog>
    XML;
    $xml = new SimpleXMLElement($xmlstr);
    $cat = [];
    foreach ($xml->shop->categories->children() AS $category) {
        $id = (int) $category->attributes()->id;
        $value = (string) $category;
        $cat[$id] = $value;
    }
    var_dump($cat);
    Ответ написан
    1 комментарий
  • Что нужно прописать в php файле, чтобы при написании php path/to/file в командной строке вызывалась по умолчанию функция index()?

    @rPman
    php path/to/file arg1 arg2
    в php:
    echo "Количество аргументов: $argc, массив арументов:";
    print_r($argv)

    $argv массив строк с аргументами, нулевая - имя файла path/to/file
    Ответ написан
    4 комментария
  • Как урезать float?

    @pola_pumpkin
    На выбор
    В офф. документации php можете посмотреть примеры

    ceil() - Округляет дробь в большую сторону
    round() - Округляет число типа float
    floor() — Округляет дробь в меньшую сторону
    Ответ написан
    Комментировать
  • При нажатии на кнопку нужно сделать переход на другую страницу на PHP?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    да занефиг:
    <?php 
    echo '<a href="/gobuhati" class="button beer-button-blue">Пивка?</a>';
    ?>
    Ответ написан
    Комментировать
  • Как синхронизировать два интернет-магазина на Битрикс?

    scottparker
    @scottparker
    на все изменения создаешь миграции и накатываешь их на боевом
    Ответ написан
    Комментировать