Задать вопрос
  • Как установить на убунту sqlitestudio?

    hottabxp
    @hottabxp
    Сначала мы жили бедно, а потом нас обокрали..
    sudo apt-get update
    sudo apt-get install sqlitebrowser
    Ответ написан
    Комментировать
  • Не открываются страницы по IP-адресу, почему?

    Frankenstine
    @Frankenstine
    Сисадмин
    Причина в том, что на одном айпи адресе может быть несколько сайтов, и только по имени и можно точно знать, какой из них запрошен.
    Ответ написан
    1 комментарий
  • Не открываются страницы по IP-адресу, почему?

    Причина 1 :
    Начиная с HTTP/1.1 (лет 15 назад) появилась поддержка мультихост серверов. На одном IP могут располагаться сотни сайтов - браузер, обращаясь к серверу по IP, обязан добавить в заголовки HTTP-запроса строку "Host:", которая позволит понять, к какому конкретно сайту Вы идете.

    В настоящее время мультихост является стандартом и нормой и подключение по IP является скорее исключением, вернее доброй волей хостера, который в отсутствие поля "Host:" выбирает за Вас какое из доменных имен предоставлять по умолчанию на данном IP.

    Причина 2:
    Все больше сайтов переходят на HTTPS. Для таких серверов соответствие доменного имени, вписанного в сертификат, уже критично заголовку "Host:", т.к. мало кто запрашивает кроме сертификата на свое доменное имя еще и сертификат на IP-адрес, который к тому же может изменяться. А современные браузеры при несоответствии полей сертификата реальному URL все чаще выдают ошибку, ограждая пользователя от подозрительного сайта.
    Ответ написан
    1 комментарий
  • Как убрать цифры в скобках перед названием вкладки chrome на сайте youtube, и зачем они?

    @denisskazikovlol
    цифры в скобках перед названием это количество непрочитанных уведомлений в ютуб. Чтобы их убрать просто нажмите на колокольчик. См. фото ниже
    до:
    6040a8769b9d5269062354.jpeg
    после:
    6040a88eace28871370262.jpeg
    Ответ написан
    Комментировать
  • Как на CSS сделать блоки "нестандартной" (не прямоугольной) формы?

    sayber
    @sayber
    Да, я программирую на PHP и еще асинхронно!
    Комментировать
  • Как на CSS сделать блоки "нестандартной" (не прямоугольной) формы?

    Symphony
    @Symphony Куратор тега CSS
    У SVG преимущества перед мэп ареа, например :hover
    jsfiddle.net/Symphony/s1qr1auy
    Ответ написан
    2 комментария
  • Нужно сделать ссылку не кликабельной! Какой способ лучше всего подойдет?

    0xD34F
    @0xD34F
    Можно так:

    <a href="https://toster.ru" onclick="return false">link</a>

    Или так:

    a.disabled {
      pointer-events: none;
    }

    <a href="https://toster.ru" class="disabled">link</a>
    Ответ написан
    3 комментария
  • Как отправить HTTP запрос методом POST на URL через PHP?

    taliban
    @taliban
    php программист
    Это капец, все что угодно перечислили, лишь не встроенную функцию
    http://php.net/manual/ru/function.file-get-contents.php#108309
    Ответ написан
    1 комментарий
  • Как отправить HTTP запрос методом POST на URL через PHP?

    GeneMoss
    @GeneMoss
    void
    $url = 'http://localhost/post.php';
    $params = array(
        'param1' => '123', // в http://localhost/post.php это будет $_POST['param1'] == '123'
        'param2' => 'abc', // в http://localhost/post.php это будет $_POST['param2'] == 'abc'
    );
    $result = file_get_contents($url, false, stream_context_create(array(
        'http' => array(
            'method'  => 'POST',
            'header'  => 'Content-type: application/x-www-form-urlencoded',
            'content' => http_build_query($params)
        )
    )));
    
    echo $result;
    Ответ написан
    1 комментарий
  • Как отправить HTTP запрос методом POST на URL через PHP?

    Tyranron
    @Tyranron
    Действительно, за время, которое потратили на создание вопроса, Вы могли без проблем найти интересующую Вас информацию в любом поисковике.

    Но раз вопрос уже задан, то должен быть и ответ(ы).
    Собственно, @OnYourLips дал ссылку на хороший фреймворк, но если нет смысла тащить в проект/скрипт целый фреймворк ради одного запроса, к примеру, то логичнее воспользоваться упомянутым CURL. В Вашем случае сценарий использования CURL будет выглядеть примерно следующим образом:
    $myCurl = curl_init();
    curl_setopt_array($myCurl, array(
        CURLOPT_URL => 'http://target.site.com/form.php',
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_POST => true,
        CURLOPT_POSTFIELDS => http_build_query(array(/*здесь массив параметров запроса*/))
    ));
    $response = curl_exec($myCurl);
    curl_close($myCurl);
    
    echo "Ответ на Ваш запрос: ".$response;

    Если надо передать при этом ещё и файлы, или обратиться по https, или ещё чего Вам понадобится - добро пожаловать в документацию:
    http://php.net/manual/ru/book.curl.php
    Советую обратиться к документации в любом случае, дабы ознакомиться со всеми возможными нюансами, а также понять и выбрать то, что конкретно Вам потребуется для решения Вашей задачи.
    Ответ написан
    3 комментария
  • Как запретить браузеру кеширование?

    @esvlad
    Веб-разработчик
    <meta http-equiv="Pragma" content="no-cache" />
    upd: по теме кеширования sitear.ru/material/zapret-keshirovaniya-stranicy-h...
    Ответ написан
    2 комментария
  • Для чего нужны замыкания (js)?

    AlexMaxTM
    @AlexMaxTM
    Ну если доступным, языком, то тогда на примере.
    Например, надо выводить в лог сообщение, а также номер строки и время прошедшее с момента зарузки страницы.

    Если не использовать замыкание, то надо определить следующую функцию
    function log(timespan, lineNumber, msg) { 
       console.log(linNumber + " " + timespan + " " + msg;
    }

    и две переменные
    var start = Date.now();
    var lineNumber = 1;

    Вызываем log так
    log(Date.now()-start, lineNumber++, "один");
    log(Date.now()-start, lineNumber++, "два");

    Очевидно, что это неудобно.

    Если использовать замыкание, то пишем так
    var log = (function () {    // функция 1
       var start = Date.now();  // текущее значение сохранятся в start 
       var num = 1;             // также используется в замыкании в функции 2. 
       return function (msg) {  // функция 2 - сохраняется в var log
          console.log(num++ + " " + (Date.now()-start) + " " + msg);
       }
    })();    // () -- вызываем функцию 1

    Вызываем так
    log("один");
    log("два");

    Результат
    lineNumber   timespan     msg
    ------------------------------
    1            0            один
    2            1            два

    Т.е. замыкание — это способ передачи данных в функцию.

    Подробнее о замыканиях см Mozilla Developer Network
    Примет взят отсюда
    Ответ написан
    Комментировать
  • Post и Get запросы, какая между ними разница и что лучше и для каких целей?

    socengel
    @socengel
    7 лет native php в продакшене, онлайн 20000+,
    Общего между ними то что они работают одинаково. Разницы между ними технически никакой. А вот идеологические различия есть.

    Я расскажу о них в контексте PHP. Прошу заметить что протокол HTTP к PHP имеет косвенное отношение потому что он создавался для обмена html страницами а PHP просто расширяет возможности и того и другого.

    GET запрос используется чтобы получить данные а POST чтобы отправить. (Напоминаю что технически они работают одинаково).

    Поэтому в контексте PHP опираясь на эту идеологию сделали следующим образом:
    1. При каждом запуске PHP по умолчанию создаются суперглобальные массивы ($_GET, $_POST).
    2. Если в строке запроса есть вопросительный знак(?). То все что после него считается параметрами GET запроса они представлены в формате 'ключ'='значение' и в качестве разделителя используется знак амперсанда (&)
    Пример:
    GET /index.php?name=Андрей&surname=Галкин
    это строка запроса, тут 2 параметра. эти параметры попадут в массив $_GET.
    3. $_POST заполняется другим способом. содержимое этого массива заполняется из "заголовков запроса". То есть из места, скрытого от глаз в явном виде. Всю рутину по созданию таких заголовков берет на себя браузер. Хотя иногда и что-то редактируется в заголовках в ручную.

    Чаще всего пост запрос используется в формах (для отправки данных).

    Например у нас есть форма для входа 2 поля логин и пароль.

    Представим что мы используем GET метод. Тогда при отправке формы мы перейдем на следующий адрес /login.php?login=Андрей&password=123 согласитесь что так передавать такую информацию совсем не безопасно. Любой может открыть ваш браузер и начиная вводить адрес сайта он из истории может увидеть ваши пароли и логины.

    А вот если бы мы указали методом POST то мы бы получили следующий запрос:
    POST /login.php (login=Андрей&password=123) то что в скобочках было бы скрыто и никак не сохранено в браузере.

    Теперь другая ситуация например форма поиска. Мы вводим текст и получаем страницу с результатами. Вот тут уместнее GET форма. потому что нам было бы удобно сразу иметь ссылку на результат поиска, то есть добавить в строку запроса можно выразится "Публичные параметры", которыми можно поделиться. И как результат в строке браузера будет конкретная ссылка на текущую страницу. Мы можем ее скопировать, и разместить где-нибудь, или например скинуть другу. И получить при переходе одну и ту же страницу. А не просить других людей зайти на сайт и в поиск вбить определенную фразу чтобы получить необходимую страницу.

    В общем подводя итог:
    GET - это чтобы получить определенную страницу в определенном виде ( сортировка, текущая страница в блоге, строка поиска и т.п. ).
    POST - для оправки данных которые не влияют на отображение страницы, в том плане что эти данные влияют только на результат выполнения скрипта ( логины, пароли, номера кредиток, сообщения и т.п. ).

    И еще одна хорошая новость их можно комбинировать, например
    POST /index.php?page=login (login=Андрей&password=123) Думаю я уже достаточно объяснил что из этого получится и какие параметры в какой массив попадут.
    Ответ написан
    2 комментария
  • Нужна ли папка node_modules в директории проекта?

    Cryden
    @Cryden
    webdesign, webdevelopment. Мой сайт: fun-wiki.ru
    Папка node-modules нужна для разработки (проще говоря это различные библиотеки которые ты можешь использовать в проекте). Gulp это task менеджер который посредством различных заданий в итоге соберет твой проект. Чаще всего во фронт энде используют так называемые препроцессоры (Pug, Sass, Less...) и исходники хранятся в отдельной папке (например src или source), посредством Gulp эти файлы при помощи библиотек node_modules собираются в готовый проект (html, css, js) который и деплоится на хостинг.
    А если честно, использовать Gulp не имея хотя бы базовых знаний и представлений о NodeJS еще рано.
    Ответ написан
  • Какие языки программирования лучше всего оплачиваются в России, США и Европе?

    @mamontm
    Оплачиваются не языки программирование.

    Оплачивается умение ими пользоваться.

    Есть буквально одно исключение - Cobol.
    Это один из старейших языков программирования, на котором начали писать еще тогда когда ваши родители еще не родились.
    Приходится иметь дело с очень древними программами, причем выполняющими весьма ответственные вещи, где высока цена ошибки (первыми, кто мог позволить себе компьютеры был очень крупный бизнес)

    о наблюдениям сервиса «Мой круг» в России последние пару лет по зарплатам лидируют...

    Вы неверно интерпретируйте данные.

    Просто ряд языков чаще используется в недорогих простых проектах. Что не отменяет их же использование в дорогих проектах. Но искажает понятие "средняя зарплата".

    Плюс недорогих проектов всегда намного больше. Что еще более искажает понятие "средняя зарплата".

    Ну то есть математически-формально всё так как описано в обзоре зарплат.

    Но вас же интересует, поди, сколько лично вы будете зарабатывать, если смените язык?
    А ваш заработок связан вовсе не с языком - а с тем, что вы в этом случае будете и с другим работодателем работать и опыта постепенно набераетесь.

    Причём если Scala и Elixir два года назад по зарплатам опережали прочие языки с сильным отрывом и за последние годы выросли по зарплате несильно, то Go и Objective-C за эти же два года совершили сильный отрыв от остальных языков и догнали Scala и Elixir

    Все упомянутые нельзя назвать распространенными на простых (то бишь на дешевых) проектах.

    P.S.:
    Узнаю типичный страх начинающего новичка (и типичное заблуждения уже начавшего новичка, который уже успел разочароваться в том, что ему не предлагают сходу 100 500 миллионов баков в месяц, как об этом все трубят) -

    "Я выучу не тот язык и карьера будет погублена"
    "Я выучу тот язык и карьера пойдет вверх".

    Язык не важен - достаточно выбрать любой язык из мейнстрима, чтобы просто на нем было можно найти работу (или, если вы в маленьком населенном пункте и будете работать не удаленно - тогда выбор языков вообще мал).

    Важно ваше умение программировать. А это понимание/знание - алгоритмов, парадигм, концепций, паттернов.

    Эти вещи из языка в язык повторяются.
    Трудно выучить только первый.

    Сменить язык программисту с опытом - не сложно.
    Ответ написан
    8 комментариев
  • Как в React изменить состояние родительского компонента?

    fornit1917
    @fornit1917
    Например объявлять в родительском компоненте функцию, которая будет делать вам что надо, и прокидывать ее в дочерний через props. В дочернем просто вызывать ее.
    Ответ написан
    Комментировать
  • Когда нужно использовать константы?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    в js нет констант. В emcascript2015 появилась возможность объявить иммутабл переменную используя ключевое слово const, которое позволяет организовать схожее поведение.

    Константы в том смысле, который приводите вы - это способ делать код более читабельным. Допустим у нас есть какая-то логика, которая зависит от какой-то предопределенной величины (например запускать таск каждые 11 часов). Мы можем написать так:
    addJob(fn, 11 * 3600);
    // или
    const SOME_JOB_FREQUENCY = 11 * 3600;
    addJob(fn, SOME_JOB_FREQUENCY)


    Какой код вам будет быстрее осмыслить? Так же если у нас эти значения используются везде и всюду то мы можем легко поменять эту контанту. Соблюдается принцип DRY и т.д.

    С другой стороны, давайте все же чуть чуть поговорим о const и имутабельных переменных. В общем случае нужно всегда использовать const, а не let/var, делая наши переменные имутабельными и предотвращая случайную перезапись значения. В контексте javascript это весьма частая ошибка, так как переменные могут быть объявлены в другом скоупе и мы можем случайно затереть значение из замыкания. Мутабельные переменные нужны только для случаев, когда изменение оных необходимо (счетчики например). Все остальное должно быть имутабельным.
    Ответ написан
    3 комментария
  • Потенциал верстальщика?

    hack504
    @hack504
    Востребован ли верстальщик в 2019, или это я дурак и он действительно сейчас никому не нужен?

    Абсолютно верно, верстальщик в 2019 никому не нужен.

    Мир стремительно меняется, исчезают старые профессии, появляются новые - столько всего интересного и сложного появилось. Я думаю, если ваш Отец перестанет обзывать себя верстальщиком, а станет величать Дизайнером, то никто подвоха не заметит (особенно учитывая стаж и портфолио) и потенциал не уйдет в прошлое вместе со старомодным "верстальщик"
    Ответ написан
  • Где можно найти разбор реальных проектов по языкам JavaScript/PHP,чтобы попрактиковаться в них?

    AlexXYZ
    @AlexXYZ
    O Keep Clear O
    Это вряд ли вам кто-то расскажет подробно. Одно могу сказать. Всё состоит из мелочей и каждую мелочь "что, зачем,почему" никто долго объяснять не будет. Нет одной технологии, которая может всё. Конечный продукт получается суммой технологий, но сколько от конкретной технологии вы возьмёте зависит только от вас.
    Да вот ещё. Все пишут примеры, как "правильно" делать, но никто не даст вам объяснения как не делать неправильно. Тут придётся самому поработать. И набивание шишек - обязательная составляющая ремесла. Поиск решения - итерационный процесс, требующий рефлексии и сосредоточенности.
    Ответ написан
    Комментировать