• Почему нельзя использовать mysql_*() и подобные?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Использовать можно. Но не рекомендуется.

    Причин две:
    1. из коробки эти функции не поддерживают плейсхолдеры. по этой причине большинство пользователей шарашат свои переменные напрямую в запрос и имеют через это неприличную болезнь. Если допилить собственную реализацию плейсхолдеров, то пользоваться можно.
    2. чувакам из Оракла впадлу поддерживать две библиотеки, и от одной тупо отказались. Поэтому сейчас при попытке обратиться к такой функции выдает ошибку, в 7 версии расширение будет удалено из дефолтной сборки, но будет поддерживаться сообществом. Если сейчас давить ошибки уровня E_DEPRECATED, а в будущем собирать руками (как и любой другой модуль) то пользоваться можно.


    Что использовать вместо них, в порядке убывания предпочтительности:
    1. ORM и QueryBuilder от используемого фреймворка, например laravel.com/docs/4.2/eloquent
    2. Нормальный враппер с поддержкой плейсхолдеров, такой как phpfaq.ru/safemysql
    3. Если уж совсем никак не отказаться от привычки работать напрямую с функциями API - то PDO, phpfaq.ru/pdo
    Ответ написан
    5 комментариев
  • Как получить выполняемые запросы в браузере?

    @GreatRash
    В Google Chrome: F12 -> Network, там будут все запросы и ответы сервера.
    Ответ написан
    Комментировать
  • Как обновить информацию на странице в nodejs?

    BOOMER_74
    @BOOMER_74
    Full-Stack разработчик
    Я вас огорчу, но простыми средствами эту проблему не решить. Результат рендера уже отправлен клиенту, и вы не можете его изменить (хотя странно, что появляется такая ошибка, это 2 разных ответа). Решений два:
    1) Посмотреть в сторону Meteor;
    2) Использовать websocket.
    2й объясню: у вас обновляются данные (допустим data), вы посылаете сообщение клиенту, что есть обновленные данные с отрендереным результатом и с помощью jQuery (например) обновляете данные на странице.
    Ответ написан
    5 комментариев
  • Как выполнить код синхронно в nodejs?

    dizballanze
    @dizballanze
    Software developer at Yandex
    Вам не нужно здесь выполнять код синхронно. Нужно просто дожидаться вызова 2х коллбек функций и затем выполнять res.end(). Проще всего это сделать при помощи модуля async:

    var async = require("async");
    
    // ...
    
    
    var tasks = [];
    
    if (price) {
        tasks.push(function(callback) {
            connection.query('UPDATE fotopovtory SET price="' + price + '" WHERE foto_id = "' + itemId + '";', callback);
        });
    }
    
    if (type) {
        tasks.push(function(callback) {
            connection.query('UPDATE fotopovtory SET tipe="' + type + '" WHERE foto_id = "' + itemId + '";', callback);
        });
    }
    
    async.parallel(tasks, function(err) {
        if (err) throw err;
        res.end();
    });
    Ответ написан
    2 комментария
  • Как правильно организовать авторизацию в node.js?

    Revencu
    @Revencu
    1. Сначала сделайте простой запрос (без авторизации) для получения произвольного кода (на сервере генерируем случайный ключ и возвращаем)
    2. Полученный ключ (code) кодируем на клиенте через SHA256 (code+username+password)
    3. Делаем запрос авторизации отправляя шифрованный код
    4. На Сервере проверяем в базе комбинацию SHA256(ключ+полеUSER+полеPASSWORD). Если нашли - Вуаля! и убиваем ключ

    Таким образом будет отправляться всегда новый код для авторизации и снифферы не уловят ваши данные.
    Ответ написан
    Комментировать
  • Почему cookie неактивно вовремя подачи моего запроса?

    @Power
    У вас
    {
      success: window.location.href = 'main'
    }

    выполняется сразу, а должно быть обёрнуто в функцию:
    {
      success: function() { window.location.href = 'main'; }
    }
    Ответ написан
    Комментировать
  • Как правильно организовать авторизацию в node.js?

    @LiguidCool
    И да, юзают https дабы пароль не утёк налево.
    Ответ написан
    Комментировать
  • Как правильно организовать авторизацию в node.js?

    kostia256
    @kostia256
    Стоит понимать что принцип авторизации везде одинаков.
    1. Идентификация (проверка существование пользователя по login)
    2. Аутентификация (проверка пароля)
    3. Авторизация (проверка прав доступа)
    Сохраняете информацию о пользователе в сессии достаточную чтобы миновать этапы 1 и 2, и сразу переходить к этапу 3. Соответственно когда умирает сессия нужно повторно произвести все шаги авторизации.
    Ответ написан
    2 комментария
  • Вопрос выбора специализации: *nix админ vs Windows админ?

    Meehalkoff
    @Meehalkoff
    Не важно каким образом вы получаете информацию, важно что вам интересно и что вам нравится. Выберите себе одно направление и стремитесь к совершенству в нем.
    А вот что именно выбрать... Как говорит народная мудрость - только любимое дело сделает тебя счастливым и, по возможности, богатым. (при условии, что дело это - не ебланить) ;)
    Ответ написан
    1 комментарий
  • C чего начать изучение scala?

    hrls
    @hrls
    "Scala для нетерпеливых" годится как entry-level manual, книгу Одерски прочитать в любом случае придется. ИМХО Одерски как первая книга скучна и не очень, но вот со средних размеров багажом читается просто отлично. Багаж можно наполнить чтением сорцов самой скалы, на уровне посмотреть как работают базовые классы и коллекции (когда учил ставил эксперименты вроде "а как бы я это реализовал сам с теми знаниями что у меня есть сейчас", лез читать код и просветлялся). Если что-то читается тяжело, то лучше это пропустить – не вся библиотека блещет красивыми и логичными решениями, некоторые решения просто удивляли (описываю 2.10).
    Может это сугубо персонально, но код на скале читается просто очень легко, если автор преследовал такую цель (имею ввиду стандартную библиотеку).
    Про spray не скажу, но у проекта typesafe вроде как очень хорошая документация с туториалами.
    Из книг можн пробежаться по Functional Programming Patterns in Scala and Clojure, если маловат опыт в функциональном программировании и планируется активное использование этой парадигмы.
    Ответ написан
    Комментировать
  • C чего начать изучение scala?

    anyd3v
    @anyd3v
    книга Одерски + офф доки + очень много практики. И еще советую делать по ходу примеры и копать их поглубже, так вы лучше поймете саму скалу. ГГод работал со скалой, всегда хватало офф доков, но начинал с курса на курсере https://www.coursera.org/course/progfun (есть на рутрекере + на coursera.abbyy-ls.com почти все переведено).
    Ответ написан
    Комментировать
  • Когда лучше НЕ использовать jQuery?

    @Vampiro
    кверя решает две проблемы:
    1 - кросс-браузерность
    2 - другому программисту не придется разбираться в говнокоде.
    Ответ написан
    Комментировать