Ответы пользователя по тегу PHP
  • Как посмотреть что отправляет форма?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Какая то магия, есть форма
    Магия вне Хогвардса не работает, все поддается куда более простым законам природы )

    И вообще можно посмотреть что уходит постом?
    для посмотреть что отправляется - смотрите девтулс - нетворк, там все видно.

    я больше всего понять не могу, почему форма отправляется с кнопки, а через jquery нет.
    Значит какое-то условие в вашем коде не выполняется, логично же. Ставьте console.log() по ходу выполнения цепочки, смотрите значения, думайте...
    Ответ написан
    1 комментарий
  • Почему не выполняется оператор "if"?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    if (in_array($server, $changed)) {
    выводит 1
    Во первых данное выражение само по себе ничего не выводит.
    Во вторых - учимся пользоваться var_dump(), смотрим что попало в переменные ДО проверки в условии, проверяем что условие "сработало" сразу следующей строкой после иф, далее по коду выставляем больше вар_дампов богу вардампов!, если у вас дебаггер не подключен. Короче, имея информацию что происходит - можно говорить о том что что-то не так, а пока у вас необоснованные заявления о том что что-то где-то чему-то равно, но не работает. Обычно в таких случаях кто-то... трындит, и подозреваю что это не интерпретатор пхп...
    Ответ написан
  • Как оптимизировать одновременную подгрузку 2000 картинок низкого качества?

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

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

    В редких случаях используют "фиктивную" пагинацию на js, то есть весь контент загружают как список с бэкенда, а на фронте делят его на куски, и по нажатию показывают кусок соответствующий номеру страницы.
    Ответ написан
    5 комментариев
  • Если в куках только PHPSESSID нужно ли уведомлять юзера?

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    если я верно понял вопрос
    $js = <<<JS
    ...
    const urls = ["url","url2","url3"];
    let url = urls[0];
    ...
    JS;
    preg_match_all('/"([^"]+)"/',$js,$array);        
    var_dump($array[0]);
    Ответ написан
  • Как сделать sql запрос с несколькими категориями в выдаче и в нужно процентном соотношении?

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

    Например вы в итоге хотите показать 10 фильмов в ленте рекомендаций, 50% боевиков, 30% драма, 10% комедия и 10% научпоп. Делаете 4 отдельных запроса с соотвтетствующими лимитами на каждую категорию (5,3,1 и 1 соответственно), склеиваете полученные массивы - профит.

    PS: Для того чтобы они потом не шли по порядку, а были худо-бедно в разброс, неплохо по итогу перед выводом сделать аррэй_шаффл.
    Ответ написан
    Комментировать
  • Как соединиться через curl с сайтом на опрелененный ip?

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

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    рекурсия + is_array()
    Ответ написан
    Комментировать
  • Как зделать чтобы кнопка добавляла товар в корзину больше 1 раза на Java скрипте?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    2 варианта:
    1) Массив js со всеми продуктами, ключи - айдишники товара, значение - объект, где есть количество и цена. По клику передавать айди товара в обработчик, поменять количество, из массива перерендерить либо весь блок корзины, либо значения суммы на товаре, количества на товаре и общую сумму, по вкусу.

    2) Аяксом отправлять на сервер айдишник товара, оттуда получать отрендеренный блок корзины, или же массив как в первом варианте и дальше все так же.

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Это такой простой способ.
    Способ нормальный, просто к искусственному интелекту это относится так же как табличка экселя с 2 формулами - то есть никак. Тупо статистика в самом примитивном виде.

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

    Если мы каждую секунду будем закидывать в бд какие то данные, а если пользователей будет много, допустим 1000 и более, не скажется ли это на производительности и как лучше в таком случае вообще собирать такие данные?
    Нет, если пользователей будет 1000, а кино в среднем около часа, то активность в плане записи в бд будет околонулевая, за 60 минут ~1000 действий, что примерно равно 1 действие в 3 секунды. Даже если активность будет в 10 раз больше, а пользователей тоже в 10 раз больше - активность в итоге будет около 100 действий за 3 секунды, или 30-40 действий в секунду, для нормальной структуры бд это вообще не нагрузка.
    Ответ написан
    Комментировать
  • Как сделать вход без пароля в WordPress?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Добавить кнопочки соц. сетей, если по ним есть возможность входа. Жмакнул и вошел )
    Ответ написан
    4 комментария
  • Как увеличивать id на случайную величину в таблице sql при добавлении?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    SET @@auto_increment_increment=2;
    SET @@auto_increment_offset=2;
    Ответ написан
    1 комментарий
  • Какой из текстовых редакторов Linux умеет работать по FTP?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    https://www.google.md/search?q=linux+text+editor+w...

    На самом деле почти все, только работает это немного не так как в винде. Хотя и с похожим функционалом их есть.
    Ответ написан
    Комментировать
  • Move_uploaded_file false?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    ini_set('error_reporting',E_ALL);
    ini_set('display_errors', 1);

    1) для файловых операций пути всегда должны быть абсолютными. У вас же какая-то непонятная папка, лежащая непонятно где, на один уровень выше непонятно чего.
    2) Пробел в пути, перед "..", неужели так сложно следить что вы пишете.
    0) Читайте ошибки внимательно, в вашем случае скорее всего такой папки нет, точнее она не там где вы себе это придумали.
    Ответ написан
    Комментировать
  • Можно ли отдать небольшой промышленный проект PHP на оценку правильности архитектуры?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Претензий к его работе нет, все довольны и счастливы, но делалась в спешке,
    ...
    и теперь хочется проверить его "качественность".

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

    Вы спокойно можете обратиться к разработчику и спросить какой код у него набросан на коленке и без тестов, а что написано по уму. Сами ведь небось спешку и согласовали? Ну так скорее всего все по принципу - "быстро, качественно, дешево - выбирайте любые 2 опции!". И какой смысл проверять заведомо быстросляпанный продукт?

    Если есть сомнения в качестве наскоро сляпанного продукта - достаточно обратиться к разработчикам, попросить написать что можно улучшить/переписать нормально и сколько это будет стоить. Скорее всего будет быстрее и дешевле какой-либо экспертизы. Тем более что основная задача решена, и можно уже не гнать по срокам.
    Ответ написан
    5 комментариев
  • Как можно взять текст от html с помощью php dom?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    https://chrome.google.com/webstore/detail/xpath-fi... возможно вам поможет
    Ответ написан
    Комментировать
  • Как после выполнения curl-запроса проверить данные?

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

    Основными проверками чаще всего являются:
    1) Проверка кода ошибки или заголовка ответа от сторонних сервисов
    2) Пустое значение или общая длина
    3) Соответствие типу
    4) Соответствие паттерну
    ну и еще много чего можно перечислить, для узких задач.
    Ответ написан
    Комментировать