• Хотел бы узнать мнение знатоков о состоятельности и адекватности моей интеллектуальной карточной игры. Такая ли она?

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    нужно при клике на чексбокс ajax-ом получить/фильтровать товар, который выводи этот файл Product.php
    1) Чекбоксы что у вас фильтруют?
    2) В Product.php нет функционала, учитывающего более одного параметра, и то - только категорию.

    не понимаю как в обработчике ajax запроса, взять эти данные
    Плохо, значит пока еще слабо знаете свою предметную область. внизу вашего вопроса есть пример, эти данные там есть, что с ними делать зависит от того что нужно получить.

    надо ли обращаться к этому файлу Product.php
    В представленном виде он бесполезен для вашей задачи, нужно писать метод получения списка из произвольных параметров. Потом сформировать из списка хтмл с готовыми блоками и отдать его (сделать echo) обратно. Только в аяксе надо будет заменить dataType: 'html'
    Ответ написан
    3 комментария
  • Как создать свойство внутри метода?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    1. Делают ли так?
    Делают, но это не хорошая практика. Во первых имеете шанс затереть какие-то настроечные данные объекта и получить непредсказуемость поведения. Во вторых, если у вас там значения из бд или другого хранилища в формате ключ-значение, лучше хранить их в отдельном поле, том же дата, но в виде stdClass, чтобы не путать их при работе с хранилищем с остальными полями, например так:
    public function setData(array $data):void{
      $this->data = (object)$data;
    }

    в идеале у вас должен быть DTO (data transfer object), но в актив рекорд движках он обычно не используется.
    Ответ написан
    4 комментария
  • Почему такая разница и как с этим бороться?

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

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

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

    так же смотрите вот такой ответ или гуглите sql nested sets.
    Ответ написан
    Комментировать
  • Как сменить название каталога/файла на сервере при запросе?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    для апача называется mod_rewrite, для нжинкса используется другая директива (лень искать, гугли).
    на сервере site.ru/cp/admin.php, чтобы в браузере на самом деле отображалось site.ru/cp/panel (грубый пример).
    Для этого еще нужно обрабатывать скриптом, или писать отдельные правила серверу на каждый чих. То есть либо единая точка входа и роутер, либо жесткие правила в конфиге сервера.
    Ответ написан
    Комментировать
  • Как сделать редирект на текущую страницу с новыми атрибутами?

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

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

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

    ThunderCat
    @ThunderCat Куратор тега MySQL
    {PHP, MySql, HTML, JS, CSS} developer
    вы присваиваете id набор айдишников вместо одного значения, если хотите чтобы ваша конструкция работала - используйте in()
    Ответ написан
    6 комментариев
  • Как оптимизировать базу данных?

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

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

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Ответ написан
    Комментировать
  • Как изменить текст кнопки при отправке?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    $(this) у вас уже кнопка, и вы в ней что-то ищете, конечно ничего работать не будет.
    Ответ написан
    Комментировать
  • Плохо ли так выводить html?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    В целом - дело вкуса, можете вообще heredoc использовать. Я предпочитаю второй способ, в частности:
    1) редактор понимает стили и форматирование
    2) редактор понимает открытие/закрытие тегов
    3) редактор умеет фолдинг хтмл кода, что удобно
    4) меньше ошибок с кавычками и экранированием

    и - мелочь, но цепляет - использовать ехо для вывода - небольшой, но накладной расход.
    Ответ написан
    Комментировать
  • Сравнение input с БД и занесение в другую таблицу?

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

    UPD: eliz_min, ну, вы конечно дополнили, но логику так и не проследил, ну да ладно... по шагам что-ли...

    1) код должен быть понятным и простым, так же желательно a) использовать реальные и логичные английские термины и слова (которые не знаешь - гуглишь), b) все данные готовить заранее, c) для поиска в базе неточных словоформ искать через like, d) в идеале использовать подготовленные выражения (я здесь оставил как есть, почитайте и примените самостоятельно), e) поля в бд обычно называются в нижнем регистре, разделители слов - андерскор (с разделителем все ок, поля надо нормально назвать), f) имена полей и таблиц желательно обернуть `` - обратными кавычками
    $name = mysqli_real_escape_string($link,$_POST['name']);
    $sql = "SELECT `product_id`, `calorie` 
    FROM `product` 
    WHERE `name_of_product` like'%{$name}%' 
    LIMIT 1";
     $query = mysqli_query($link, $sql);
    $data = mysqli_fetch_assoc($query);
    ок, тут мы (возможно) получили ид и количество калорий от еды с названием которое пришло постом...

    2) далее интереснее...
    пользователь вводит название продукта, который он употребил и ему выводиться сумма калорий за сутки.
    Как человек поверхностно знакомый с диетическим питанием, подозреваю что "я съел сыр" и "я сожрал 2 кило сыра" не всегда одно и то же. понимаете к чему я клоню?
    На данном этапе создана база данных с продуктами и таблицей употребленных, в которой находится id юзера,id продукта и время.
    Чего-то не хватает, вам не кажется? Ладно, едем дальше...

    3) и тут же на первой строчке у нас все становится очень интересным, я бы даже сказал что тут Шляпник особо глубоко затянулся... :
    if($data['Name_Of_Product'] === md5(md5($_POST['name']))) {...
    итак, учитывая что никакой Name_Of_Product мы в запросе не просили выбрать, естественно что тут уже будет лажа, однако далее еще интереснее: md5(md5($_POST['name'])), загадочные шаманские вуду пляски, видимо чтобы этот кусок кода внутри условия ТОЧНО никогда не выполнился. Вообще хотелось бы услышать, каким образом этот код пришел вам в голову и что он по вашему должен делать? Так, чисто понять как работает причудливый разум...

    4)
    mysqli_query($link, "INSERT INTO comsume (Id_p)VALUES ($data['Product_id'])");
    ...в которой находится id юзера,id продукта и время.
    но вносите вы почему то только ид продукта, кроме того, как я уже говорил - "чего то не хватает" )
    Ответ написан
  • Как передать в функцию координаты поиска в ассоциативном массиве?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Есть конечно, и это... (сюрприз!) массивы!
    function fun(arr,['name_1' , 'name_2']){
     ...//итерируем массив, получая цепочку доступа
    }
    Ответ написан