Задать вопрос
  • Нужна ли очистка, если есть валидация?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    В принципе - лишний, потому что что он будет, что он не будет, в любом случае FILTER_VALIDATE_EMAIL проверит строку на валидность.
    Если строка валидна (а значит там нет символов, вычищаемых через FILTER_SANITIZE_EMAIL) - работа продолжится. Если строка не валидна - будет ошибка.
    Ответ написан
    1 комментарий
  • Как достать кириллицу из RTF файла через python или linux?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    Мне кажется должно быть наверное как-то возможно так:
    try:
         # Python 2.6-2.7 
         from HTMLParser import HTMLParser
    except ImportError:
         # Python 3+
         from html.parser import HTMLParser
    h = HTMLParser()
    return h.unescape(text)


    P.S. Просто я в Python-е ни-в-зуб-ногой.
    Ответ написан
    Комментировать
  • Как создать ф-цию запроса в БД?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    Возможно несколько вариантов. Можно сделать несколько запросов, и в зависимости от входных аргументов выбирать один из них. Это наиболее правильный вариант.

    Можно, но способ плох, модифицировать запрос в сторону универсальности. Например:
    ... WHERE (B.Country=:country OR :country='') AND ...
    .

    Или совсем "грязный" вариант, менять операцию в зависимости от аргумента:
    ... WHERE B.Country ".(!empty($country) ? "=" : "<>").":country AND ...
    Ответ написан
    Комментировать
  • .ppn или как присвоить имя сайту без ICANN?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    А что за зона .ppn? Среди стандартных общеземных такой зоны просто нет. Самое близкое - это .pn, и всё.

    Или это зона в каком-нибудь подпольном даркнете? Тогда она ни как не может регулироваться из ICAAN, там свои правила игры, подпольные.
    Ответ написан
  • Те, кто хоть немного знают про подсистему Linux ответьте как поступить в данной ситуации?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    Как я понял по описаниям ошибки в этих Интернетах, у скрипта проверки не получается заресолвить адрес registry.npmjs.org, DNS его не даёт. Попробуйте ещё раз команду, вдруг получится. Если нет - прописывать IP-адрес registry.npmjs.org в /etc/hosts. Или например NS Googl-а в /etc/resolv.conf.
    Ответ написан
    Комментировать
  • Установка linux с флешки?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    На страничке https://ubuntuforums.org/showthread.php?t=2408864&... последний пост - ваше решение.
    Ответ написан
  • Как открыть консоль в операционке линукс на стадии ввода пароля?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    Можно ли запустить консоль на стадии ввода пароля. Если да, то как?

    Нажмите Alt+Ctrl+F1 - попадёте в консоль, на стадию ввода имени/пароля для входа.

    Можно ли загрузить консоль до биоса?

    BIOS к консоли/OS отношения не имеет. И нет, сначала отрабатывает BIOS (дёргая всё оборудование компьютера), потом передаётся выполнение в OS, у которой есть консоль.

    Как зайти из консоли в файловую систему?

    В файловую систему не нужно входить. Попав в консоль, вы сможете делать что угодно и с файловой системой, и с файлами/директориями на ней.

    Если нельзя войти в файловую систему, как открыть текстовый файл прямо в консоли?

    Самое простое: запустить (если установлен) Midnight Commander командой mc. А там уже привычно...

    Где найти пароль от учетки?

    В мозгу администратора(ов). Если туда доступа нет - тогда "взламывать" пароль: или через rescue mode, или загрузкой с USB/CD.
    Ответ написан
    1 комментарий
  • Так кто же грузит сеть?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    Самое беззатратное: сходить к свичам, посмотреть, где лампочки моргают без остановки. По проводам идти к виновнику торжества для выдачи люлей.

    Немного сложнее: получать и анализировать SNMP со всех роутеров/хабов/свичей.

    Затратное: перед роутером поставить сервер/гейт, которым контролировать весь трафик наружу/вовнутрь. В Linux-like можно iptraf смотреть, или ещё что, таких утилит - дофига...
    Ответ написан
    Комментировать
  • Как сделать запрос PHP на добавление массива в MySQL?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    Потому что массивы $_POST['tovar'] и $_POST['many'] существуют (они передаются из формы), а вот массив $_POST['tovar']['many'] не существует, совсем.

    Должно быть:
    $link = mysqli_connect($db_host, $db_user, $db_password, $db_database) or die("Ошибка:" . mysqli_error($link));
    
    foreach ($_POST['tovar'] as $i => $tovar) {
      if (!empty($tovar) AND !empty($_POST['many'][$i])) {
        $many = $_POST['many'][$i];
        mysqli_query($link,"INSERT INTO tovar(products_id,tovar,many)
                VALUES(
                                '".mysqli_real_escape_string($link, $id)."',
                  '".mysqli_real_escape_string($link, $tovar)."',
                  '".mysqli_real_escape_string($link, $many)."'
                )") or die("Ошибка: ".mysqli_error($link));
      } else {
        $_SESSION['answer'] = "Ошибка";
      }
    }


    И ещё, $id появляется из ниоткуда, да?
    Ответ написан
  • Почему при парсинге слетает кодировка буквы 'Р'?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    Вы не дали ссылку на исходную страницу, не привели PHP-шный код разбора данных из текста страницы. Привели только скрипт запуска curl() для загрузки страницы, который к самой проблеме никак... А откуда появилось вот это 7 => string "..." и т.д.? Где этот PHP-код? Не, ну... Ну... Ну это как "у меня авто не едет, а нём все окна помыты и все фары/фонари тряпкой протёрты, помогите-люди-добрые", ей-богу!

    А по поводу порчи русской Р (HEX-код которой 0x04 0x20) - известная проблема. В preg_match/preg_replace надо использовать модификатор u: preg_match("/\S+/su", $str);
    Ответ написан
    Комментировать
  • Почему in_array() не работает в цикле?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    if ($key = array_search("976654", $session['data'])) {
      $result['id'] = $key;
    }


    Но при этом у вас $result не возвращается из функции через return $result;, и не является глобальной переменной, определённой вне функции check(). А значит вне функции check() вы его изменение и не увидите...
    Ответ написан
    2 комментария
  • Почему выдаёт ошибку err_name_not_resolved fix на сайте когда заходишь через внутреннюю сеть?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    NS-сервер, которым пользуются компьютеры вашей локальной сети, не знает IP-адрес требуемого сайта. И мало того, что не знает, он не сконфигурирован спросить IP-адрес этого сайта у других, вышестоящих NS-серверов, которые этот IP-адрес знают... Просите администратора разобраться.

    Ручной режим исправления - прописать IP-адрес и имя сайта (в виде 123.456.789.012 site.com, где IP-адрес должен быть ваш, реальный) на каждом компьютере в файле C:\Windows\system32\drivers\etc\hosts, и в консоли сделать ipconfig /flushdns.
    Ответ написан
    Комментировать
  • Превышения объема памяти php?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    В ошибке говорится, что скрипты PHP уже загребли для работы 128 мегабайт (число 134217728, делённое на 1024 - получатся килобайты, и ещё раз делённое на 1024 - будут мегабайты) оперативной памяти. А в php.ini (а может в каком-то другом месте) стоит лимит оперативной памяти (и 128Mb - это значение по умолчанию) на один PHP-процесс в виде строки: memory_limit=128M.
    Вот PHP и пишет "лимит памяти превышен, прекращаю работу".
    Или повышайте лимит, или ищите причину расхода памяти в скриптах.

    P.S. Кстати, большие массивы ненужных данных можно вычищать из памяти командой unset($arr);, где $arr - имя массива с ненужными данными.
    Ответ написан
    Комментировать
  • Как получить chat_id для поиска по базе?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    Удостоверьтесь, что в $result["message"]["chat"]["id"] вообще хоть что-то есть. А потом - что это число chat_id, конечно.
    Ответ написан
  • Как отменить обязательность заполнения текстового поля при отправке формы?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    papakota, А если вам дать атомную бомбу, вы её взорвёте, что бы уничтожить всех этих... ну тупых болтунов-советчиков?

    Вам же написали раз <input type="text" name="contact" required />, потом второй ответ был тоже про required. Что бы сложить одно с другим, и понять, что нужно удалять слово required в строке <input type="text" name="contact" required /> - большого ума не надо. Ну, не больше, чем для лая на этих тупых... Ну вы поняли кто, да? Не тупой ведь?

    А вот где теперь будете искать текст <input type="text" name="contact" required /> (а его нет в приведённом файле productdetails.php) - это вам уже ни кто не поможет, все тупые обидятся и пройдут мимо. Если вы плюнете в толпу - толпа утрётся. А если толпа плюнет в вас...
    Хотя чё я вас учу, вы ж не тупой.
    Ответ написан
  • Не работает регистрация, в чем может быть причина?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    Копать в сторону ini_set('display_errors', 0); error_reporting(E_ALL); и последующего разгребания ошибок в error.log HTTP-сервера (куда, как правило, складываются ошибки PHP, но бывают варианты...).

    P.S. Потому что и MySQL бывает глючит, и HTTP-сервер повисает, и под нагрузкой оперативная память кончается.
    Ответ написан
    Комментировать
  • Взламывают, как защитить сайт?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    Ну тогда хотя-бы так:
    function rights($rights){
    global $http, $user;
    if(!isset($user['rights']) OR empty($rights) OR $user['rights'] < $rights) {
    header('Location: '.$http.$_SERVER['SERVER_NAME']); exit;
    }
    }
    
    $user_id = isset($_COOKIE['uid']) ? fl($_COOKIE['uid']) : '';
    $password = isset($_COOKIE['password']) ? fl($_COOKIE['password']) : '';
    
    if(!empty($user_id) && !empty($password)) {
    $user = $base->query('SELECT * FROM `users` WHERE `id` = "'.mysql_real_escape_string($user_id).'" AND `password` = "'.mysql_real_escape_string($password).'"')->fetch_assoc();
    } else {$user = false;}


    P.S. Но явно дыра где-то в другом месте.
    Ответ написан
    Комментировать
  • Почему 2 http запроса к PHP выполняются по очереди, а не одновременно?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    Действительно, однозначная поочерёдность.
    Но если сделать URL уникальным (через index.php?_=random()) - поочерёдности уже нет.
    Ответ написан
  • Почему не работает правильно регулярное выражение?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    Исключаем O, o и 0 из списка разрешенных символов - получается вот:
    \b^[135][a-np-zA-NP-Z1-9]{3,10}\b
    Ответ написан
  • Как убрать все теги "a" из кода?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    <a href="[^"]+">[^<]+</a> с включенным "Regular expresion" в "search mode", разумеется.
    Ответ написан
    6 комментариев