• Есть ли способ защитить информацию, которую выводит php файл при обращении к нему из js AJAX'ом?

    NeiroNx
    @NeiroNx
    Программист
    Шифрование, и обфускация функций шифрования - спасет от ламеров. Вон в яндексе точки маршрута зашифровали, а мне лень расшифровать, потыкался да забил.
    Вроде и функция есть(гдето в коде) и данные, а расшифровать уже сложно.
    Ответ написан
    Комментировать
  • Есть ли способ защитить информацию, которую выводит php файл при обращении к нему из js AJAX'ом?

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

    @dmshar
    Одно могу сказать точно: если человек, после полутора лет штудирования С++ (кстати, не самое простое, но - по моему мнению - самое верное начало) пишет по сути - "хочу не только кодить, ни и уметь действительно разрабатывать программные системы" - это отлично. Потому как многие - а сегодня, увы, можно сказать и большинство - останавливаються именно не кодинге, и мнят себя при этом курутыми разработчиками.
    Если обратить внимание на то, что автору всего 17 лет - то тем более - респект, так держать!
    Теперь по сути. Вы абсолютно правы, кодирование на любом языке, даже виртуозное, это еще не программирование. Что-бы стать хорошим программистом надо основательно изучить основы Теории Алгоритмов и Структур данных, теорию и практику работы с базами данных, особенности построения распределенных, мобильных и веб-приложений (даже если завтра вы не собираетесь писать под веб или Андроид), понять хотя-бы в общих чертах, как работают сети, и "полирнуться" основами архитектуры современных информационных систем и паттернами проектирования. Ну и надо понимать, для квалифицированного программиста знание одного языка - этого абсолютно недостаточно.
    В каком порядке и по каким источникам двигаться к цели - тут мнений много и разных. Вот несколько ссылок - только не воспринимайте их буквально, подходите творчески. Смотрите, что лучше вам ложиться на душу, что легче "заходит". И не комплексуйте, не бейтесь головой об стену если чего не поймете сразу - потом, через определенное время вернетесь и с высоты приобретенных знаний разберетесь. Главное - не отступать от цели, как в спорте - хоть по часу-два, но каждый день.
    Итак, для начала:
    https://proglib.io/p/cs-learning/
    https://teachyourselfcs.com/
    https://tproger.ru/curriculum/computer-science-ste...
    Удачи!
    P.S. И еще забыл - главное :-). English!!!! Без него в этой профессии сегодня - никак!
    P.P.S. И да - умение самостоятельно Гууглить, искать нужную информацию, отсекать информационный шлак. Ключевое слово - "самостоятельно"! Но это, как бы, вообще на "нулевом" месте.
    Ответ написан
    1 комментарий
  • Может ли сервер выполнять какую-либо работу при отсутствии клиентов?

    Robur
    @Robur
    Знаю больше чем это необходимо
    Да.

    Детали зависят от того что за сервер, как написан, какие нужны и так далее. Вариантов миллионы - можете начать с cron.
    Ответ написан
    Комментировать
  • Как работает брутфорс?

    Jump
    @Jump
    Системный администратор со стажем.
    то это происходило бы довольно медленно (каждый раз обращаться к серверу ожидая ответа.
    Ну так конечно можно, но так никто адекватный не делает. Ибо скорость перебора в таком варианте редко когда более одного пароля в секунду, чаще меньше.

    Поэтому появляется вопрос: как это работает?
    Все очень просто. Никто адекватный не занимается брутафорсом по сети. Только локально.
    Берете базу хэшей которую вы скачали со взломанного сервера и спокойно брутафорсите со скорость в несколько террахэшей в секунду.

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

    BasiC2k
    @BasiC2k
    .NET developer (open to job offers)
    Это ты расписал случай для одного потока с запросом. А если их 100, 1000 или больше?
    Ответ написан
    4 комментария
  • В чем проблема SQL-Инъекций?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Разработкой занимается неприятно большое число глупых и халатных людей. Больше только жадных и некомпетентных заказчиков. Даже в серьёзных медицинских и банковских системах можно встретить чудовищные по своей простоте и в то же время опасности ошибки. А в web-разработке всё намного хуже, по оптимистичным оценкам 99% сайтов сделаны по принципу и так сойдёт.
    Ответ написан
    1 комментарий
  • Как сделать цикл?

    mad_maximus
    @mad_maximus
    Делайте пагинацию. Для этого вам нужно достать количество всех фильмов, поделить его на количество фильмов на одной странице (допустим, 20) и округлить результат в большую сторону с помощью ceil. Дальше через цикл вывести количество страниц и сделать ссылки вида ?page=$i. Теперь при каждом запросе следующей страницы вы делаете запрос в базу, используя LIMIT, где сначала указываете количество фильмов на страницу (20), а потом оффсет, с которого брать фильмы (номер страницы * количество фильмов).
    Ответ написан
    Комментировать
  • Обязательно ли производить добавление данных через транзакцию?

    Stalker_RED
    @Stalker_RED
    Если вы вносите что-то одним запросом - не обязательно.

    Смысл транзакции - обработать какую-то цепочку дествий, которые нельзя разрывать.
    Например, у пользователя есть корзина с заказами, и он пытается ее оплатить.
    Нужно
    1. списать деньги со счета юзера
    2. очистить корзину
    3. уменьшить кол-во доступного в магазине товара
    4. отправить уведомление службе доставки, мол отвезите вон туда три телевизора и чайник, например.

    И вот вы это все делаете БЕЗ транзакции, и на втором пункте молния ударила в серверную, и сгорел блок питания.

    Вам все починили, но юзер жалуется: деньги списаны, а товара нет!

    А если перед пунктом 1 начать транзакцию, то при возникновении ошибки или сбоя на любом из этапов, откатится вся транзакция.
    Деньги вернутся на счет, корзина снова будет наполнена, вот это все.
    Ответ написан
    2 комментария
  • Есть ли private, public, protected, static в JS?

    lastuniverse
    @lastuniverse
    Всегда вокруг да около IT тем
    Комментировать
  • Есть ли private, public, protected, static в JS?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега JavaScript
    Приватных пока нет (но с помощью транспайлеров как бы есть):
    class Foo {
      #private = 42;
    }


    Статичные есть:
    class Foo {
      static property = 42;
      static method() {...}
    }
    Ответ написан
    Комментировать
  • Есть ли private, public, protected, static в JS?

    Xuxicheta
    @Xuxicheta
    инженер
    Есть/будут приватные поля начинающиеся с #. https://jsfiddle.net/7263ms4k/ (в хроме есть, в лисе нет)
    static есть
    А так, имитация всего этого есть в typescript

    Можно запилить приватные поля как переменные в конструкторе и передавать их в методы через замыкание. Но придется делать каждый раз новые методы для каждого экземпляра. Типа так https://jsfiddle.net/melchiorio/4ztL3qkx/
    Можно хранить в WeakMap используя this как ключ, типа так https://jsfiddle.net/melchiorio/z7afuec5/
    Ответ написан
    Комментировать
  • Какого размера числа способен сосчитать js?

    Stalker_RED
    @Stalker_RED
    Это не от языка зависит, а от движка.

    Посмотрте константу Number.MAX_SAFE_INTEGER // -> 9007199254740991
    https://developer.mozilla.org/ru/docs/Web/JavaScri...
    В другой среде число может отличаться.
    (другой браузер, другая операционка, телефон, вот это все)
    Если сегодня вы не нашли систему, где оно отличается, это еще не значит, что завтра такая не появится.
    Ответ написан
    1 комментарий
  • Объясните строчку кода?

    bitniks
    @bitniks
    Go/PHP/Symfony developer
    Таким образом вызывается анонимная функция. Скобками обрамляем анонимную функцию и c помощью (id, input) вызываем её с параметрами id и input
    (
    function(id, input) {
        input.addEventListener("change", function() {
            localStorage.setItem(id, input.value);
        });
    }
    )(id, input);

    Чтобы было понятно, это можно записать так
    var fun = function(id, input) {
        input.addEventListener("change", function() {
            localStorage.setItem(id, input.value);
        });
    }
    
    fun(id, input);
    Ответ написан
    Комментировать
  • Хотелось бы понять что люди называют большим проектом в веб-разработке. Примеры?

    Jump
    @Jump
    Системный администратор со стажем.
    Хотелось бы понять что люди называют большим проектом в веб-разработке
    Большими называют проекты над которыми задействовано большое количество людей. Только и всего.

    для мелких проектов нужны одни инструменты, а для крупных - другие
    Над мелким проектом работает один, два человека. Это хоть в блокноте можно делать.
    А над крупным работает сотня, а то и больше человек. Нужно управлять этими людьми, оргранизовывать коммуникацию между ними, потому что они могут быть в разных городах, офисах. Кто-то увольняется, кто-то приходит. Совсем другой пласт работ. Нужен четкий регламент, куча условностей.

    чем определяющая разница между сайтом и веб-приложением
    Сайт - текстовая, графическая или видеоинформация доступная в сети интернет, по протоколам HTTP/HTTPS.
    Веб приложение - приложение (программа) доступная в сети интернет по протоколам HTTP/HTTPS.
    Ответ написан
    Комментировать
  • Есть ли какая-нибудь разница между document.ready и атрибутом defer?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Есть ли какая-нибудь разница между document.ready и атрибутом defer?
    Есть. Document.ready - это событие, а defer - это атрибут асинхронной загрузки скриптов с сохранением порядка их выполнения.

    Является ли что-то из этого более предпочтительным?
    Я думаю одно другое не может заменить в полной мере и ещё, как мне кажется, если Вы оставите document.ready там же где он и был, не зависимо от того, будет ли использоваться defer или нет, для совместимости и переносимости кода в будущем - это будет оптимальным решением.
    Ответ написан
    Комментировать
  • Есть ли какая-нибудь разница между document.ready и атрибутом defer?

    Odisseya
    @Odisseya
    Оптимизирую PageSpeed & Performance
    Разница в последовательности событий:
    1. domInteractive
    2. Запускается defer
    3. domContentLoaded
    4. Запускается document.ready

    Помимо разницы во времени запуска, defer делает загрузку скрипта асинхронной и контролирует порядок выполнения скриптов.
    Ответ написан
    Комментировать
  • Есть ли какая-нибудь разница между document.ready и атрибутом defer?

    Zraza
    @Zraza
    Помог ответ? Отметь решением!
    Есть еще нюанс:
    Скрипт без defer/async, заблокирует загрузку страницы, пока он не будет загружен, распаршен и выполнен. Даже если код в нем запланирован на отложенное выполнение - это замедлит отображение html (если скрипт подключается не в конце страницы)
    Тут неплохая статейка в тему https://habr.com/ru/post/323790/
    Ответ написан
    3 комментария
  • Есть ли какая-нибудь разница между document.ready и атрибутом defer?

    potapchino
    @potapchino
    defer-скрипты выполняются до того, как выполнится код внутри ready(т.к. .ready() завязан на событии domcontentloaded, то иначе говоря, defer-скрипты выполнятся до тригерринга этого события)
    Ответ написан
    2 комментария