• Есть разница написания SQL запроса?

    @JohnDidact
    Нуб во всём
    Разница есть… Я не знаю, может я ошибаюсь (вряд ли, но всё же…), но первый вариант используется для имён таблиц, полей, слова которые могут быть зарезервированными, служебными, типа desc и т.п.
    Ответ написан
    Комментировать
  • Как отключить данный тип ошибок?

    @JohnDidact
    Нуб во всём
    В самом начале файла… или, лучше, в самом начале подключаемого файла, типа ядра, задать параметры вывода ошибок:
    error_reporting(E_ALL & ~E_NOTICE);
    Я хоть и не трупрограммист, да и вообще не программист, а обычный быдлокодер необразованный, но всегда отображаю все ошибки, от предупреждений, до фатальных ошибок, что и Вам советую, тем более, в стадии разработки.

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

    @JohnDidact Автор вопроса
    Нуб во всём
    В общем, сделал так:
    function shit(string $str){                      // Принимаю строку.
     $len = mb_strlen($str);                         // Длина строки,
     $num = 2 ** $len - 1;                           // количество возможных строк,
     $listStr = array();                             // список всех возможных строк.
     do{
      $value = '';                                   // Значение новой строки по умолчанию,
      $bin = decbin($num);                           // бинарное представление десятичного числа,
      for($i = 1; isset($bin[-$i]); $i++){           // прохожу по кадому символу в $bin:
       $bin[-$i] and $value = $str[-$i] . $value;    // если итерируемый символ - истина, то записываю в новую строку символ из сходной строки с ключём, равным активной итерации.
      }
      $listStr[] = $value;
     } while($num--);
     return $listStr;
    }


    Если у кого есть решение быстрее и менее ресурсоёмко, то обязательно напишите мне.
    Ответ написан
    Комментировать
  • Как не превысить количество обращений к стороннему ресурсу со своего домена?

    @JohnDidact
    Нуб во всём
    Такой вот круг: прежде, чем запросить инфу по апи, открывай файл и смотри, когда делал запрос, если меньше, чем, например, 10 минут назад, то отдавай кэш… если больше, то проси инфу по апи, обрабатывай её, сохраняй в кэш, в файл записывай время запроса.

    Примерно так…
    Ответ написан
    Комментировать
  • Почему не работает запрос привязки параметра?

    @JohnDidact
    Нуб во всём
    Потому, что в $sql у тебя булев тип лежит. Учись читать сообщения об ошибках. Они не просто так "пишутся".

    Тебя обломали с подготовкой запроса. Тут либо с синтаксисом проблемка, либо не ту таблицу/поля указываешь.

    Чтобы узнать, почему тебя обломали, выведи $conn->error
    Ответ написан
    1 комментарий
  • Можно ли обрезать пробелы внутри запроса GET?

    @JohnDidact
    Нуб во всём
    Удалять по заголовку??? Делай это по первичному ключу. Как правило, это id. Но тут уже как у разраба голова крутится…

    Касаемо вопроса. trim удаляет пробельные символы в конце и в начале строки. Если тебе нужно удалить все пробелы в строке, то можешь использовать функции замены, типа str_replace() / strtr() или же регулярное выражение preg_replace()
    Ответ написан
    Комментировать
  • Почему ломается кодировка при измение размера текста?

    @JohnDidact
    Нуб во всём
    Смею предположить, что текст передаётся методом GET в глобальную переменную _GET. У браузеров есть ограничения. Ещё нужно помнить, что кириллица кодируется, и, раз хз во сколько, символов становится больше. Ну а потом эта вся строка обрезается браузером, серверу передаётся закодированная, но обрезанная строка и сервер не может её правильно раскодировать… вот и результат.

    Хотя, на самом деле, это лишь мои догадки)) И стоило бы это проверить. Я лишь выдвинул теорию. Прошу какашками в меня не кидаться, особенно касается это офанатевшего пиэчпишника.
    Ответ написан
    Комментировать
  • Перестал работать 4G. Как исправить?

    @JohnDidact Автор вопроса
    Нуб во всём
    5eee3478141ec065983504.jpegПоходу, ответ найден) завтра ещё отпишусь

    UPD. 21.06.2020 00:22: В общем, так и да… проблема была в операторе. Сейчас уже всё наладилось. А та случайность - было "счастливым" совпадением)) Нужно было звонить оператору и задавать вопросы ему.
    Ответ написан
    Комментировать
  • Как спарсить пост со страницы вк?

    @JohnDidact
    Нуб во всём
    А не легче ли для этого использовать API ВК???

    https://vk.com/dev/wall.getById
    Ответ написан
    Комментировать
  • Ошибка "Unknown property", как быть?

    @JohnDidact
    Нуб во всём
    https://developer.mozilla.org/ru/docs/Web/CSS/grid-gap

    Устарело
    Эта возможность была удалена из веб-стандартов. Хотя некоторые браузеры по-прежнему могут поддерживать её, она находится в процессе удаления. Не используйте её ни в старых, ни в новых проектах. Страницы или веб-приложения, использующие её, могут в любой момент сломаться.

    Примечание. Свойство CSS с разделительной сеткой было переименовано в свойство prefix-less gap.
    Ответ написан
    5 комментариев
  • Как удаленно обновлять программу на php?

    @JohnDidact
    Нуб во всём
    Вот мой быдлометод…
    Заливать обновы на удалённый комп.
    Написать прогу на PHP, которая будет кроном каждый день/час/минуту/секунду/тик/… проверять, есть ли обновления. Если есть, то эта самая прога, отдельная от основной, сначала скачивает полностью обновления в новую папку... Потом менять название папки на основную, предварительно переименовав старую в какой-нибудь типа бэкап... ну и всё.

    Но это не точно… я бы так сделал, но другим не советую. Есть для этих целей более профессиональное готовое решение.
    Ответ написан
    Комментировать
  • Передача List\Массив из Unity в php через www можно?

    @JohnDidact
    Нуб во всём
    Я не знаю Unity3d и не представляю, как это всё работает, но PHP понимает данные в формате JSON. Самое, думаю, нормальное. Но это если сервер будет обращаться к Unity3d

    Можно параметры через GET/POST отправлять серверу.

    А если всё работает на одном компе, то можно PHP запустить через CLI…консоль, и передать туда массив сериализованный, или тот же JSON в base64, но эт уж, наверное, слишком)
    Ответ написан
    6 комментариев
  • Зачем пишут return false в конце функции или if?

    @JohnDidact
    Нуб во всём
    Это чтобы не выполнялось основное действие… типа как переход по ссылке не прошёл, или страница не перезагрузилась при нажатии на кнопку.
    Ответ написан
    Комментировать
  • Как вывести изображение с определённым названием, но неизвестным расширением (jpg/png)?

    @JohnDidact
    Нуб во всём
    Ну по сути, cover_user.jpg - это и есть название. А users/dirname/cover_user.jpg - это относительный путь к файлу. Как сказал офанатевший, храни изображение в едином типе или без .расширение, просто mime в заголовке соответствующий отдавай.
    Ответ написан
    Комментировать
  • Как сделать решение линейных уравнений с одной неизвестной на php?

    @JohnDidact
    Нуб во всём
    Я когда подобным занимался, юзал учебник по алгебре и изучал формулы, потом эти формулы переносил в PHP (не тупо копипастом) и всё работало. Только вот потом я понял, что мне это не нужно)) В сложных уравнениях было много регулярок и циклов, много пользователей напрягли бы сервер, думаю. Тем более, подобных серверов куча, не думаю, что это было бы востребованным.

    Но дело твоё, юзай регулярки и формулы
    Ответ написан
    Комментировать
  • Как сделать аутентификацию на php?

    @JohnDidact
    Нуб во всём
    login.php

    <?php
    include __DIR__.'/config.php';
    
    if(!AUTH) {
      //мы еще не авторизованы
      if(!empty($_POST['login']) && !empty($_POST['password']) && isset($users[$_POST['login']])) {
          //передали данные для входа и логин существует
          if($users[$_POST['login']]['password'] == getPassword($_POST['password'])) {
              //пароль совпадает
              $_SESSION['user'] = $_POST['login'];
    
              if(isset($_POST['remember'])) {
                //стоит галка "запомнить меня"
                setcookie('login', $_POST['login'], time() + 3600 * 24 * 365, '/');
                setcookie('password', getPassword($users[$_POST['login']]['password']), time() + 3600 * 24 * 365, '/');
              }
    
          }
      }
      if(!isset($_SESSION['user']) || $_SESSION['user'] != $_POST['login']) {
        //авторизация не прошла, сохраним ошибку
        $_SESSION['message'] = 'Неверный логин или пароль';
      }
    } else {
        if(isset($_GET['logout'])) { //выход из системы
            unset($_SESSION['user']);
            setcookie('login', '', time() - 3600 * 24 * 365, '/');
            setcookie('password', '', time() - 3600 * 24 * 365, '/');
        }
    }
    
    header('Location: index.php'); //переходим на главную страницу


    Тот "метод", что описан в статье, думаю, использовать крайне глупо…
    Если у тебя возникают такие вопросы, то тебе не на Q&A ресурсы нужно, а не обучающие. Могу посоветовать книгу Котерова и Костарёва, прочти от начала до конца и вопрос таких возникать не будет. Ещё, в добавок, рекомендую посмотреть видео-уроки "Специалист PHP" все уровни. Очень доступно и интересно подаётся материал, на мой взгляд. Я, конечно, не спец в этом, так как лентяй (поэтому до конца не дочитал и видео-уроки не досмотрел), но основы понял. Тебе же советую не останавливаться, а пройти все курсы.
    Ответ написан
  • Ошибка: Call to a member function on null?

    @JohnDidact
    Нуб во всём
    По мне так, тут чёрным по белому написано, в чём проблема))

    Ещё, на сколько я знаю, аргументы должны запятой отделяться…

    Для меня это достаточно запутанно: непонятные переменные, вызов метода, передача в его аргумент функции, которая принимает свои аргументы определённого класса и числа (но по умолчанию null). Я бы отделил всё это, но не важно.

    Важно то, что запятой между Player $player и int $data = null нет.
    Ответ написан
    Комментировать
  • Регулярка не правильно работает?

    @JohnDidact
    Нуб во всём
    Всё правильно выводит, не считая "ения". preg_match() в matches пишет под ключ n совпадение с номером n. А под ключём 0 вся строка, что подходит под шаблон. У меня тоже бывали проблемы с кириллицей, даже u не помогал. Разбираться я с этим не стал, времени не было, поэтому решал задачу так: составлял строку из русского алфавита во двух регистрах и вместо '[a-zA-Zа-яА-Я]' писал '[a-zA-Z'. $abc .']', где $abc - строка из русского алфавита в двух регистрах. Разделители и модификаторы расставишь сам)

    Если ты хочешь найти более двух совпадений, тогда используй preg_match_all()
    Ответ написан
  • Есть ли альтернатива?

    @JohnDidact
    Нуб во всём
    На счёт PHP - он вообще в браузере ничего не открывает. На счёт HTML… есть target. Можешь прочесть.
    Ответ написан
    Комментировать
  • Как передать в качестве аргумента функции объект класса внутри его приватного метода?

    @JohnDidact
    Нуб во всём
    Мало чего понял... Но, если нужно использовать, так сказать себя в себе, объект класса в методе этого объекта, то $this, думаю, самое то, если я правильно понял.
    Ответ написан
    1 комментарий