• Насколько актуален jQuery?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
  • Как правильно соединять данные Классов?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    3 таблицы объединяются через join по соответствующим ключам, полученный набор уже распихать по объектам. Иначе получится слишком большой объем выборки и непонятный ордер, все же бд для этого больше подходит чем сортировка на пхп.
    Ответ написан
    5 комментариев
  • Php ajax запрос?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    curl()
    file_get_contents()
    Ответ написан
  • MySQL или MSSQL для крупного проекта?

    ThunderCat
    @ThunderCat Куратор тега MySQL
    {PHP, MySql, HTML, JS, CSS} developer
    Я бы не стал заморачиваться с поиском лучшего решения на пустом месте, если бы лучшая бд существовала, остальные бы умерли в неизвестности. В вашем случае я бы использовал MySQL, как минимум на начальном этапе, и вот почему:
    1) Это бесплатно
    2) Мускуль - хороший добротный середнячек своего класса, то есть он умеет почти все и при этом сильно не проседает по производительности.
    3) На него ОГРОМНОЕ количество доков и юзеркейсов, а так же туториалов и советов по оптимизации в конкретную задачу.
    4) При смене бд(если таковая понадобится) вам, скорее всего, придется только поменять драйвер бд(при условии грамотной архитектуры) и аккуратно перенести дамп базы.
    5) Про MSSQL - до недавнего времени в ней не было нативной поддержки UTF-8, вместо нее была(и есть еще вроде) своя UCS, которая мультибайт, но какой-то свой(как всегда у мс), в свое время в угоду "скорости" ставили сервак с мсскулем, в итоге практически никакого прироста не получили, зато получили гемор с переводом кодировок.
    6) Если проект реально нуждается в разрывном бд на пределе современных возможностей - смотрите в сторону инмемори бд, например тарантул или что-то носкюельное, типа редис и иже с ним.
    Ответ написан
    4 комментария
  • Как правильно организовать ajax запросы в MVC архитектуре?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Логичнее вынести все в ajaxController() и работать в нем только с запросами аякса, это в частности позволяет в конструкторе контроллера не вызывать кучу специфических для данного раздела методов, а так же сразу определить для вью соответствующий лэйаут, однако это как раз не всегда удобно. По этому у меня есть аякс контроллер, в который я отсылаю только аякс запросы общего назначения, не привязанные к какому то конкретному разделу(в конструкторе сразу можно обработать тип и сделать ексит если не аякс), а запросы с более четким типом, например работа с пользователем, идет в свой контроллер, и уже в экшене проверяется тип запроса и производятся нужные действия. Это немного более накладно по ресурсам(из за конструктора с доп. функционалом), но более удобно в плане "все подобное в одном месте".
    На уровне роутера имхо никаких обработок быть не должно, его задача отдать роут, а контроллер уже создает логику ответа.
    Ответ написан
    Комментировать
  • Что из себя представляет, и как правильно выводить слой представления в MVC?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Пока что я вижу такой вариант: в контроллере получаю данные модели, создаю объект класса View(там же в методе контроллера) и с его помощью подключаю необходимый шаблон

    Обычно так и делают, вью определяют в конструкторе как свойство контроллера, отовсюду изнутри контроллера соответственно он виден как $this->view; Шаблон обычно в виде прописан по умолчанию(что бы не дергать каждый раз набор из шапки, футера, слайдера етц), а вот контент в него "рендерится", и обычно берется из папки вьюшек с тем же именем что и контроллер+экшн. это сильно упрощает подключение вьюх, достаточно вызвать метод $this->view->renderView(); и в шаблон по умолчанию в определенном месте рендерится вьюха из нужной папки с нужным именем(например /engine/view/index/index.tpl для индекс контроллера + индекс экшна). Это как вариант.
    Ответ написан
    2 комментария
  • Минификация php?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    @me охреневает в полный рост от крутизны ТС О.о

    Прям все заоптимизировано, запросы(на минуточку, самая прожорливая часть кода, около 80% времени в большинстве проектов) выполняются мгновенно, файлы открываются на раз, внешние сервисы вообще не требуют задержек по времени на отклик, проблема вот только в чтении пхп скриптов с винта...

    Даа, нам простым смертным только мечтать...

    Но для тех кто не ищет легких путей некоторые лохи написали тут статейку...
    Ответ написан
  • Как синхронизировать Canvas HTML5 и ImageMagick?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Мм, гадаю на код по фотографии...
    Ответ написан
  • Как уничтожить сессию?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Из мануала:
    session_destroy() уничтожает все данные, связанные с текущей сессией. Данная функция не удаляет какие-либо глобальные переменные, связанные с сессией и не удаляет сессионные cookie. Чтобы вновь использовать переменные сессии, следует вызвать session_start().

    Замечание: Нет необходимости вызывать session_destroy() в обычном коде. Очищайте массив $_SESSION вместо удаления данных сессии.
    Чтобы полностью удалить сессию, также необходимо удалить и её идентификатор. Если для передачи идентификатора сессии используются cookie (поведение по умолчанию), то сессионные cookie также должны быть удалены. Для этого можно использовать setcookie().

    При включённой опции session.use_strict_mode, вам не нужно удалять устаревшие cookie идентификатора сессии. В этом нет необходимости, потому что модуль сессии не примет cookie идентификатора сессии, если с этим идентификатором сессии нет связанных данных, и модуль сессии установит новый cookie идентификатора сессии. Рекомендуется включать опцию session.use_strict_mode для всех сайтов.
    Ответ написан
    Комментировать
  • Не выводится php-код ниже цикла while, в чем проблема?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Классека....
    При отладке приложений вывод ошибок и варнингов должен быть включен, уровень ошибок - E_ALL
    в принципе достаточно добавить в начале скриптов:
    ini_set('error_reporting', E_ALL);
    ini_set('display_errors', 1);

    после этого будет видно что конкретно у вас в коде упало с фатал ерором.
    Ответ написан
  • Как обновлять ссылку на элемент после использования drag&drop?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    вешать слушатель не на элементы, а на документ, по клику проверять или подходит элемент по классу/ид.

    чистым жс не владею в совершенстве, в jquery примерно так:
    $(document).on('click', '.someclass', function(e){
      e.preventDefault(); // если надо
      doSomeStuff();
    })
    Ответ написан
    Комментировать
  • Как найти вхождение в бд?

    ThunderCat
    @ThunderCat Куратор тега MySQL
    {PHP, MySql, HTML, JS, CSS} developer
    Like не работает
    в каком смысле не работает? У вас не работает или выключена(как?) возможность использования?
    Ответ написан
    6 комментариев
  • Сколько замедляет ооп работа программы php?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Начиная с емнип 5.6 работа с объектной моделью данных не уступает в скорости процедурному коду, а в потреблении памяти сильно выигрывает, за счет создания только тех объектов, которые необходимы в данный момент в коде, а не тянутся все 100500 функций из процедурной лапши.
    Ответ написан
    Комментировать
  • Создание консультанта для сайта?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
  • Функционал сайта для гостиницы?

    ThunderCat
    @ThunderCat Куратор тега Веб-разработка
    {PHP, MySql, HTML, JS, CSS} developer
    Если толково напишете систему бронирования(не просто заказ менеджеру "Вася с собакой заказал номер на неделю, желательно с сортиром в номере", а что бы:
    учитывало количество и тип номеров,
    возможность подселения,
    выборку свободных мест по датам от и до,
    подсчет цены на человека в зависимости от заполненности номера и сезонных цен,
    подсказку выгодных вариантов из имеющихся,
    скидки с учетом детей
    дополнительные кровати и пересчет цен с ними
    ну и еще десяток нюансов...
    )
    можете смело идти в любую контору как минимум мидом с перспективой на сеньера.
    Ответ написан
    Комментировать
  • Как правильно составить запрос MYSQL?

    ThunderCat
    @ThunderCat Куратор тега MySQL
    {PHP, MySql, HTML, JS, CSS} developer
    1) * parent_id
    2) нестед сидс проще реализовать на клиенте
    Ответ написан
    Комментировать
  • Как реализовать динамическое обновление данных в бд?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Так а вопрос то в чем?
    1)Не хватает ресурсов - покупаем мощности сервера,
    2) не хватает данных - запрашиваем чаще,
    3) опять не хватает мощности - см. п. 1.

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

    ThunderCat
    @ThunderCat Куратор тега HTML
    {PHP, MySql, HTML, JS, CSS} developer
    что то похожее делал, даю как есть, ибо лень разбираться самому в вашем случае:
    var offs = 0;
    $('#mainform input, textarea').on('invalid',function(e){
            var fi = document.querySelectorAll(':invalid');
            if(fi.length){
                fi = fi[1];
                fi.focus();
                offs = $(fi).offset();
                return true;
            }
            return true;
        })

    все это конечно в документ онлоад обернуть, ну и форму вашу прикрутить.
    Ответ написан
  • Почему выдает ошибку в RedBeanPHP?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    OODB Store requires a bean, got: array' in /home2/neobitin/public_html/libs/rb.php:9102
    смотрите почему у вас туда попадает массив а не бин
    Ответ написан
    2 комментария