• Какой выбрать движок баз данных?

    @IgoNsk
    backend web developer
    Согласен с постом @sim3x , и немного добавлю от себя.
    Когда надо было решить проблему с полнотекстовым поиском по данным из MySQL - мне в этом хорошо помог Sphinx. Он заметно шустрее штатного механизма, ну и функционал куда шире. Пару дней хватит на изучение документов, статей. Можно комбинировать Sphinx поиск, и поиск по исходным данным (например по числовым полям).
    Ответ написан
    2 комментария
  • Как составить зависимость кэша для данной выборки?

    @IgoNsk
    backend web developer
    А точно стоит хранить параметры подключения к MySQL БД в этой же базе? Мне кажется так делать не совсем правильно - ибо выглядит это весьма коряво. Или это все таки описываются настройки соединения с другой базой?

    Если стоит задача хранить параметры в базе, то я бы добавил пару полей:
    - время изменения параметра (таким образом можно будет запомнить последнее изменение параметров и кешировать по нему)
    - группировать как то параметры логически - например завести еще одну сущность "Группа параметров", и в твоей таблице завести поле group_id. Тогда можно извлекать нужные тебе параметры не 'limit'=>'4' а group_id = ?.

    p.s. А вообще надо исходить из задачи. Мне кажется ты придумал не самое правильное решение к какой то задаче, и сейчас спрашиваешь как быть с ним.
    Скажи ЧТО ты пытаешься этим кодом решить, т.к. может существовать более красивое решение
    Ответ написан
  • Как в SphinxQL получить значение атрибута, указанного в параметре select?

    @IgoNsk Автор вопроса
    backend web developer
    Немного дополню.

    через Sphinx php API это делается так (версия sphinx - 2.0.8 - linux):
    $sphinx_obj->SetGroupBy("rubric_id", SPH_GROUPBY_ATTR, "@count desc");
        $sphinx_obj->SetLimits(0, 100, 100);
        $sphinx_obj->SetSelect('rubric_id, @count as items_count');
        $search_res = $sphinx_obj->Query($query, 'catalog_index');


    и такой результат:
    [6345248] => Array
      (
        [weight] => 1
        [attrs] => Array
          (
            [rubric_id] => 3763337
            [@count] => 5
          )
      )
    [3465352] => Array
      (
        [weight] => 1
        [attrs] => Array
          (
            [rubric_id] => 3756960
            [@count] => 2
          )
      )


    В идеале достичь того же через SphinxQL
    Ответ написан
    Комментировать
  • Как достать значение селектора?

    @IgoNsk
    backend web developer
    Ошибка в том, что классы css не могут начинаться с цифр.

    Используй название класса вида
    "bla-159"
    Ответ написан
    Комментировать
  • Как получить все поля таблицы, кроме одного, с помощью DAO Yii?

    @IgoNsk
    backend web developer
    А точно надо именно так как вы пишете в постановке вопроса? Как выглядит задача в реальной жизни , т.е. что надо сделать на уровне бизнес логики, а не кода?
    Ответ написан
    Комментировать
  • php vs python vs ruby(ror)

    @IgoNsk
    backend web developer
    Если есть желание работать с вебом, то начинать с PHP выгоднее всего. Можно нелюбить PHP, но знать его все же стоит. Чтобы его не любить, надо хотя бы понимать за что. И потому если хочется расти куда то выше, то в будущем можно будет переключить внимание на другой язык (Ruby/Python/Java/C#), который станет либо хобби либо заменит место PHP как основного языка для разработки. В любом случае знание PHP Не будет лишним, т.к. его плюсы:
    - легко найти работу
    - низкий порог вхождения
    - простые и средние проекты делать на нем быстрее, проще, выгоднее чем на других языках - ибо php для этого и был придуман. Потому разрабатывая сложную серверную часть например на JAVA порой быстрее и проще фронтенд накидать на PHP.
    Ответ написан
    3 комментария
  • Где можно потренироваться написанию "идеального кода"?

    @IgoNsk Автор вопроса
    backend web developer
    Книги - фигня.

    Это Вы через 7(!) лет поняли?
    Может Вы не те книги читаете, тут "PHP на 1,2,3 ..." не хватит точно.


    Не, такое не читаю - я поклонник серии "PHP для чайников, Joomla за 24 часа и т.д.".

    А если серьезно, то во фразу вырванную Вами из контекста, я вкладывал другой смысл. Я читал книги по паттернам проектирования, по написанию идеального кода и прочие лучшие практики. Но одно дело прочитать, а другое дело в абсолютно произвольной ситуации уметь эти паттерны применить плюс грамотно закладывать архитектуру кода.
    По крайне мере МНЕ книги в этом не помогли (например, Паттерны проектирования от банды четырех).

    Посоветуйте что нибудь по паттернам с хорошими примерами - я с удовольствием почитаю.

    Может Вы слышали про github или stack overflow?

    Слышал

    p.s. Смысл Вашего поста заключался в том, чтобы постебать надо мной? Ибо совета я тут, честно говоря, не увидел.
    Ответ написан
    Комментировать
  • Насколько в PHP безопасно хранить данные в $_SESSION?

    @IgoNsk
    backend web developer
    После некоторого изучения этого вопроса, пришел к выводу, что довольно безопасно: файл создается на сервере, ни в коем образом не передается клиенту. Может я заблуждаюсь?

    нет - не заблуждаешься, клиенту передается только идентификатор сессии либо через COOKIE, либо через GET параметр запроса (если COOKIE не поддерживаются клиентом и включена соответствующая настройка в PHP на сервере), чтобы рпи открытии следующей страница сервер понял что это пять тот же самый пользователь.

    И что может произойти с данными, если сервер не поддерживает кукисы, а у клиента они включены?


    во первых, может наоборот - выключены в браузере куки? Ибо как написал ты, то просто сессия будет идти через GET параметр - то все штатно.

    во вторых, с какими данными? если механизм сессий не работает, то никаких данных и нет.
    Если же ты решил потереть или поменять идентификатор сессий в браузере, то данные на сервере будут храниться то тех пор, пока у них не истечет срок жизни (который указывается в настройках сессий php).

    p.s. Я бы посоветовал еще поразбираться с этим механизмом. Т.к. судя по вопросам ты не до конца уловил суть этого всего)
    Ответ написан
    1 комментарий