• Как корректно подставлять текст к ссылке?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Как можно реализовать это?
    Если я правильно понял, вам нужно сравнение без кейс сенситив.
    Будем считать что у вас адекватный архитектурный подход и для хранения данных используется БД. Тогда вариантов два:
    1) Магия strtolower(). При регистрации все данные перегоняем в нижний регистр и так и записываем. Соответственно перед выборкой тоже делаем искомой строке strtolower().
    2) Задаем таблице кодировку с постфиксом _ci, то есть кейс инсенситив. Тогда выборка будет игнорировать регистр, и в выборке GazEs12 = gazes12.
    Ответ написан
    7 комментариев
  • Какие существую фреймворки по сжатию и ресайзу картинок на PHP по URL?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Пример такого решения https://imgix.com/, но нужен SelfHosted.
    Так что мешает?
    https://docs.imgix.com/libraries/imgix-php
    Лицензия BSD 2, то есть практически полная свобода действий.
    Ответ написан
  • Соединения 2 файлов в один со соединением?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    мне нужен чтобы он соединял файлы вот так 12355:13747
    Если речь идет об объединении содержимого файлов через двоеточие, то добавьте его перед file_get_contents, то есть $file_content .= ':'.file_get_contents('1.txt');
    Ответ написан
    Комментировать
  • Страница не видит $ при подключенном Jquery, в чем ошибка?

    ThunderCat
    @ThunderCat Куратор тега CSS
    {PHP, MySql, HTML, JS, CSS} developer
    1) Если вы хотите использовать jq в инлайновых скриптах, то подключать его надо в head разделе и без атрибута defer, но это во первых не самая лучшая практика (понятно что это съедает время загрузки страницы), во вторых все равно может не работать, если связь с цдн сервером сильно хуже чем с самим доменом. Можно скачать файл на свой хост, но опять же - это не гарантия и половинчатое решение.
    2) Все скрипты, использующие подгружаемые библиотеки в идеале должны выполняться по событию загрузки документа.
    document.addEventListener('DOMContentLoaded', function() {
    //тут уже есть возможность работать с jq
        console.log($('.footer'));
        alert("Усе готово, шеф!");
    });
    Ответ написан
    Комментировать
  • Как разделить верстку html и бизнес-логику php?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    На бэке шаблоны + любой фреймворк/самопис, способный выдавать что-то типа rest api.
    На фронте соответственно шаблоны инициализируют что-то типа react/vue, которое уже стучится в апи, получает данные, рисует новое состояние.
    Ответ написан
    Комментировать
  • Нужно ли открывать файлы стилей в роботс?

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

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

    ThunderCat
    @ThunderCat Куратор тега MySQL
    {PHP, MySql, HTML, JS, CSS} developer
    У меня сейчас имеется одна таблица для одного поста.
    Точно? Это на сайте будет один пост? Или под каждый пост будет таблица? Или все таки одна таблица для постов? (читать про нормальные формы бд, 1,2 и 3 НФ)

    Но как лучше реализовать комментарии, чтобы была одна таблица, но там хранились комментарии из разных постов?
    Очень просто: Таблица, где будет поле post_id, которое будет указывать на пост, к которому относится комментарий. Если структура иерархическая, то еще parent_id, указывающий на какой комментарий это ответ. (Читать про отношения Один-ко-многим, хотя и про остальные тоже для общего развития. Ну и про иерархические структуры через nested sets)

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

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

    GROUP BY p.id
    ORDER BY s.rating DESC i.int DESC
    Ответ написан
    2 комментария
  • Ошибка MySQL: ER_PARSE_ERROR, что делать?

    ThunderCat
    @ThunderCat Куратор тега MySQL
    {PHP, MySql, HTML, JS, CSS} developer
    const [row] = await dbConnection.query( логин или нет. 
            "SELECT * 
             FROM `users` 
             WHERE `name` = ? 
             AND `password` = ?",
         [username, password] // <- тут ОДИН МАССИВ, RTFM!!!
        );
    Ответ написан
  • Какие технологии лучше использовать для системы онлайн записи?

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

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Во первых - где сама форма?
    Во вторых - у полей есть айди, но нету имен, что за фигня?
    в третьих - берете формдату из формы, и из энтиес делаете объект
    const data = new FormData(formElement);
    const value = Object.fromEntries(data.entries());
    console.log(value);
    Ответ написан
    1 комментарий
  • Как обновить данные из БД с помощью AJAX?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    1) У вас криво вставлена разметка, вы там теги штоле нормально расставьте
    2) оба селекта имеют одинаковое имя: select name="profession"
    3) В чем собсно проблема? Не нашли как отправить значения формы аяксом? (Результатов: примерно 1 120 000)
    Ответ написан
  • Реально ли мне (подростку) зарабатывать в интернете?

    ThunderCat
    @ThunderCat
    {PHP, MySql, HTML, JS, CSS} developer
    Или лучше всё-таки отучиться нормально и потом уже о заработке думать?
    Первым делом нужно выделить направление. Иначе разброд и шатание сделает только хуже. Сегодня востребованы, как нынче модно говорить, T-shaped спецы, по этому с твоим, без преувеличения, обширным и полезным списком увлечений, все таки придется как-то выбрать чем конкретно ты хочешь заниматься и давить в одном направлении более интенсивно. Ну и пробовать искать работу под профиль. Образование можно получать заочно, это вполне норм и, я бы сказал, тренд.

    Работу стоит искать оффлайн, для начала, это дает очень мощный буст в профессии, за счет работы в уже готовой профильной команде. Тут и код ревью коллег, и советы от коллег, менторов и лидов, и понимание работы в комманде, гит, воркфлоу, таски и вот это все...
    Ответ написан
    Комментировать
  • Как сделать музыку на сайте так же как в вк?

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

    1) Хранилище. По примерным оценкам в мире в цифровом виде около 500 000 000 оригинальных музыкальных композиций. Учитывая ремиксы и каверы - можно смело брать миллиард. Средний вес композиции среднего качества - 5 Мб. То есть порядка 5 петабайт, если хранить не в лучшем качестве. Учитывая что это должно иметь какое-то резервное хранение (у нас тут серьезный сервис все-таки), умножаем на 2 (10 петабайт). При стоимости около 2 центов за гиг в месяц, 10 000 000 Гб * $0,02 = $200 000 в месяц хранение. Ну, бюджетненько в целом.

    2) БД, которая хранит данные обо всех этих композициях. Стоимость хранения будет поменьше, но думаю к 20-50К все равно где-то выйдет.

    3) Другой вопрос - где брать эти данные, так как не все музыкальные файлы содержат полное описание композиции. На перебор 1 миллиарда записей и сортировки их по жанрам, альбомам, исполнителям, дате выпуска и т.д. уйдет некоторое время. Допустим 50% композиций будут иметь нормальное описание, остается все те же 500 миллионов композиций на обработку. Пусть на каждую понадобится 2 минуты работы, внести данные в поля (хотя их еще как-то найти надо, но допустим), тогда получим 1 миллиард минут. Это 1900 лет работы, или 16 666 667 часов. Час работы самого дешевого индуса - 3 бакса/час. 16 миллионов * 3 - давайте округлим до 45 миллионов. Даже если сократить этот пункт в 10 раз - выйдет под 4 миллиона. Рабский труд сегодня дорог как никогда...

    4) Теперь платформа которая будет всем этим ворочать, так как у нас в сервисе должны же какие-то пользователи завестись вроде. Ну, на сервера можно смело отложить небольшую сумму, тоже где-то 20-30К, для начала сойдет.

    5) Прочие накладные расходы, такие как билеты на самолет до Америки с целью договориться где будет стоять ваш датацентр и прочие мелочи мы пока в бюджет не вкладываем, так как там уже инвесторы подтянутся, и смысла заморачиваться с мелочевкой нету. Так же оставляем за кадром вопросы лицензий и отчислений авторам, так как с этим возиться лень, как-нибудь решим потом.

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

    По итогу на год:
    $200 000 * 12 = $2 400 000 хранилище
    $20 000 * 12 = $240 000 бд
    $20 000 * 12 = $240 000 сервера приложения
    $4 000 000 работы
    Итого: чуть меньше 7 миллионов баксов.
    Ответ написан
    2 комментария
  • Как реализовать "живой" поиск на базе Node и MySQL?

    ThunderCat
    @ThunderCat Куратор тега MySQL
    {PHP, MySql, HTML, JS, CSS} developer
    Если подразумевается что поиск будет производиться прямо во время набора текста в поле ввода, то довольно простая схема:

    На поле набора вешается онкейап листенер,
    по событию содержимое поля отправляется аяксом на сервер,
    там делается выборка нескольких значений, удовлетворяющих поисковой строке,
    обратно присылается этот набор, либо в виде жсон и дальше парсится в хтмл, либо сразу сформированный хтмл,
    данные лепятся как список ниже поисковой строчки, на кнопки вниз/вверх подсвечиваем строки из подсказки (фокус с поля надо убрать),
    по ентеру в поле вносим полную строку из подсказки и субмитим форму поиска, либо по клику тоже самое.

    Нюанс: По кейап надо ставить небольшую паузу, чтобы не спамить запросами.
    Ответ написан
    Комментировать
  • Как исправить ошибку?

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

    PS: Вообще на ваши вопросы ответы есть, а отмеченных решений нет, что говорит либо о наплевательском отношении к людям которые вам помогали, либо о незнании что вообще такой функционал существует (сомнительно) и помогает другим решать похожие проблемы .
    Ответ написан
    7 комментариев
  • На чем сделать онлайн-документацию для образовательных учреждений?

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

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    запрос Гугл laravel Результатов: примерно 44 600 000 (0,78 сек.)
    еще вопросы?
    Ответ написан
    Комментировать