Задать вопрос
  • PHP: Почему 'mb_convert_encoding' не конвертирует простую строку?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    по тому что гладиолус документация?
    Ответ написан
    4 комментария
  • Почему не удаётся запустить imagick на php 8.2, 8.3?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    через power shell командой php -i проверял, всегда показывало, что imagick есть и версия та, которую ставил.
    Это говорит о том, что меняли вы не тот php.ini, так как для командной строки и для модуля апача/демона для нжинкса php.ini лежит в другом месте. Тут надо запускать через веб сервер пхп файлик с phpinfo();

    а также отсутствует инфа в php info.
    Значит просто не туда смотрели. Ищите на страничке ini, смотрите где физически лежит ини файл для веба и меняйте настройки в нем.
    Ответ написан
  • Почему форма обратной связи php отправляет часть кода?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    1) Тело хтмл письма, как и любой подвид иксмл, должно начинаться с оперделяющих тегов, у вас же тупо табличка отправляется.
    2) Заниматься мастурбациейфигней с отправкой через mail() в 21 веке как минимум стыдно, как максимум чревато проблемами при отладке и смене функциональности, не говоря уже о том что отправка хтмл контента и приложений становится задачей со звездочкой.
    3) Все легко решается переходом на нормальную библиотеку отправки почты, пхпмэйлер/свифтмэйлер и их многочисленные аналоги.
    Ответ написан
    3 комментария
  • Где взять бэкенд для фронтенд учебного проекта?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Комментировать
  • Как посмотреть на строку в в которой запрос SQL выдает ошибку?

    ThunderCat
    @ThunderCat Куратор тега MySQL
    {PHP, MySql, HTML, JS, CSS} developer
    для начала стоит посмотреть какого типа колонка `source`.`new.remains.costsum`, ее формат должен совпадать с форматом `target`.`remains_costsum` - double(15,5). В противном случае, если колонки не совпадают по типу, колонки не совпадают и по размеру и очевидно в `source`.`new.remains.costsum` содержится превышающее заданный диапазон значение.
    Ответ написан
  • Как узнать что загружает php на сервере debian?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Профайлинг, не?
    Ответ написан
    Комментировать
  • Как исправить ошибку при парсинге данных PHP?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    парсинг это не самая простая задача. И не самая быстрая. По этому нормально что парсинг происходит не очень быстро, а настройки сервера не позволяют довести дело до конца.
    Варианты:
    1) разбивайте парсер на части, где каждый шаг сохраняет результат в промежуточной таблице с полем "обработано", и вызывайте его последовательно, как отдельные скрипты
    2) Отключите ограничение на время работы скрипта, это делается либо в конфиге пхп, либо командой set_time_limit(0); Но возможно что ограничения сервера не позволят вам этого сделать.
    3) Запускайте скрипт из консоли, правда придется переписать его так, чтобы лара смогла его запустить, не помню навскидку как там организуется работа с cli скриптами, в других фреймворках часто есть возможность запустить конторллер из командной строки. В зенде вроде есть возможность использовать CliController.
    4) Очереди, раббитмкю как вариант. Формируйте очередь из задач, и они будут выполняться одна за другой как отдельные задачи.
    Ответ написан
    Комментировать
  • Bitrix. Mysql жрет процессор как не в себя. Куда копать?

    ThunderCat
    @ThunderCat
    {PHP, MySql, HTML, JS, CSS} developer
    если оставить 90 тыс позиций - нагрузка на процессор падает больше чем втрое.
    Есть мысль что большое количество запросов происходит минуя индексы, которые возможно вообще отсутствуют. Первое что приходит на ум - залогировать все запросы, выбрать типовые и прогнать их ручками через explain. Заодно и посмотреть что там в плане памяти жрется.
    Так же стоит посмотреть движок таблиц, может там какой-нить майисам или вообще свой особый, бывало такое.
    Ну и возможно у вас где-то вызовы запросов вообще без лимитов, это вполне может сожрать и проц и память подчистую.

    нагрузка: 10-40 обращений в минуту.
    Это вообще ниачем. В купе с мизерной базой размером меньше миллиона записей на таблицу, такая нагрузка действительно вызывает удивление...
    Ответ написан
  • Как запретить скачивание файл по прямой ссылке?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Папка выше документ рута + readfile() + 2 заголовка. Ну и банальная проверка на роль.
    Ответ написан
    8 комментариев
  • Как проверять подлинность данных, отправляемых клиентом в базу данных?

    ThunderCat
    @ThunderCat Куратор тега Веб-разработка
    {PHP, MySql, HTML, JS, CSS} developer
    В этом куске кода критическая переменная это tokens. При нажатии на кнопку start со стороны клиента у пользователя отнимается один токен и кол-во общих токенов отправляется в бд
    Не надо тупить. Раз токен это критичные данные, то никаких "со стороны клиента" быть не должно. Нажат старт - на сервер отправилось "старт пошел", из данных в бд вычитается/прибавляется значение, обратно отсылается что в итоге получилось. С остальным так же - на сервер отправляется событие, а сервер считает чего куда прибавлять и возвращает результат на фронт.
    Ответ написан
    Комментировать
  • Как называется подпрограмма внутри массива?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    а если внутри элемента массива подпрограмма?
    для этого элемент массива должен быть объектом, и соответственно этот метод будет принадлежать этому объекту.
    Ответ написан
  • Нужна ли адаптивная вёрстка для компьютерного браузера, если кто-то будет уменьшать окно браузера до мобильной версии?

    ThunderCat
    @ThunderCat
    {PHP, MySql, HTML, JS, CSS} developer
    Насколько такой подход к разработке правильный?
    Нинасколько. Так как озон достаточно старая система, проектирование мобильной версии с отдельным мобильным видом наследие периода когда верстку сделать адаптивной было гораздо сложнее, а поисковые роботы еще ориентировались на субдомены по типу м.домен.тлд для отображения результатов поиска с мобильных устройств. Менять что-то с потерей поисковой индексации уже никто не будет.

    В сегодняшних реалиях такой подход для новых проектов неприемлем, так как это лишняя работа и лишний код отдельно для мобильной версии, что еще и обслуживание усложняет. Все делают мобайл фирст верстку (так как ~80% траффика это мобилы), и сразу адаптив, так как современный цсс делает это на раз-два. Короче, сейчас так не делают.

    Навряд ли многие люди так уменьшают окошко браузера вручную и для чего это нужно...
    Это нужно не для людей которые "уменьшают окошко", а для бесшовного перехода между устройствами, так как есть планшеты, нетбуки, мобилы с разным разрешением и просто масштабирование в браузере, и для всего этого зоопарка адаптив позволяет задать нормальный вид, практически для любого устройства в заданном диапазоне разрешений, причем без специальной подгонки под экран.
    Ответ написан
    7 комментариев
  • Ошибка с jquery?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    тут нужно либо крестик снять, либо трусы надеть. Вы делаете отложенную загрузку скрипта жквери (через дефер), и при этом вызываете код, который без него работать не будет.
    Вариантов 2:
    1) Убрать дефер на жквери скрипт
    2) Закатать весь код жквери в православный ванила жс евент загрузки, типа документ.аддевентлистенер (ДОМCонтентЛоадед)
    Ответ написан
    Комментировать
  • Что за CMS, на какой системе сделать подобный сайт?

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

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

    ThunderCat
    @ThunderCat
    {PHP, MySql, HTML, JS, CSS} developer
    Все по классике:
    трейсроут
    проверить днсы
    Протестировать основные сайты на открытие
    Посмотреть ответы от сервера в консоли/нетворк браузера
    Ответ написан
    Комментировать
  • Категории не подгружаются при первой загрузке страницы, как исправить?

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

    ThunderCat
    @ThunderCat Куратор тега MySQL
    {PHP, MySql, HTML, JS, CSS} developer
    делаю запрос в бд, вытаскиваю товары которые есть в API и пытаюсь искать в массиве вытащенных товаров - товары, которых нет в API через in_array,
    Для этого есть not in, перечисляете айдишники/уникальные идентификаторы всех пришедших с апи товаров, и у оставшихся ставите наличие 0 одним апдейтом.

    но что-то фигня какая-то получается, находит один единственный товар, который есть и в API и в бд
    По описанию вообще не ясно как вы ищете совпадающие товары, по этому есть мысль что проблема скорее в коде и алгоритме, чем в апи или базе.
    Ответ написан
  • Почему на ios не работает addEventListener('click')?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Емнип window это объект браузера, со своими свойствами и евентами, в которые вроде даже DOMContentLoaded не входит (вместо него есть "load"), это евент документа. Скорее странно что это работает на не айос...
    -window.addEventListener('DOMContentLoaded', () => {
    +document.addEventListener('DOMContentLoaded', () => {
    Ответ написан
    Комментировать