• Как выполнить функцию из строки в PHP?

    Stillborn
    @Stillborn
    web-developer, web-designer
    Вы зря пришли к такой реализации, пересмотрите все в корне. Это как минимум неудобно.
    Ответ написан
    Комментировать
  • Как передать данные в js файл?

    conf
    @conf
    Ruby developer
    Еще можно использовать data-атрибуты, например:
    <ul class="products">
    <li data-product-id="55">Toster</li>
    </ul>


    Из js к ним можно получить доступ с помощью функции .data:
    $('.products li').on('click', function() { 
          console.log($(this).data('product-id'));  // 55
    });
    Ответ написан
    Комментировать
  • Как передать данные в js файл?

    Никак, потому что статику принято отдавать не через php, а напрямую nginx'ом. Если гнать все js через php вы себе сервер просадите.

    Варианты:
    1) выводите в теле
    <script type="text/javascript">
    var id = <?=$id?>
    operation(id);
    </script>
    В этом ничего страшного нет.

    2) сделайте отдельный config.php.js который будет отдавать Json объект который будет содержать необходимое состояние\настоойки.
    Ответ написан
    2 комментария
  • Какой есть IDE HTML5\JS\PHP\CSS?

    iproger
    @iproger
    Безответственный гений
    На счет 2го пункта - 2й монитор.

    Попробуйте NetBeans.
    Ответ написан
    Комментировать
  • Какой есть IDE HTML5\JS\PHP\CSS?

    Bandicoot
    @Bandicoot
    Вась-программист
    Не совсем то, что вы хотите, но очень добротная IDE: www.jetbrains.com/phpstorm
    Ответ написан
    1 комментарий
  • Как вам способ ускорить веб?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    эм... что?

    конкатенация стилей/скриптов и их последующая минификация - это нормальная практика. Для этого ненужно никаких стандартов. Делайте хоть на лету, хоть собирайте один раз при деплое (что было бы логично) а еще лучше сразу же ложите рядом уже сжатый в gzip вариант ваших скомпиленых файлов. Опять же смысла сделать из двух файлов один я не вижу как минимум по следующей причине: стили должны загрузиться раньше скриптов. Во всяком случае в большинстве случаев. Загрузка скриптов не должна блокировать загрузку страницы.

    Что касается SPDY - то тут вы вообще ни капельки не попали. Там профит в том что используется одно tcp-соединение с сервером и мультиплексирование данных. Это позволяет снизить нагрузку на сервер, не тратить время на подключение к серверу по новой для загрузки следующих файлов и т.д. По сути при использовании этого протокола конкатенация файлов стилей и скриптов не должна приносить существенного профита, ибо соединение все равно будет одно и то же.

    p.s. приведенная вами статья не даром находится в хабе "ненормальное программирование".
    Ответ написан
    Комментировать
  • Защищает ли приведение к типу данных int от sql инъекций?

    @link_irk
    Лучше работу с БД вынести в отдельный класс. И при вызове метода, который производит запрос к БД, делать фильтрацию входных данных.
    Ответ написан
    Комментировать
  • Какой выбрать язык для создания сайтов?

    nazarpc
    @nazarpc
    Open Source enthusiast
    А ещё в интернете много информации о старых версиях PHP.
    Текущие версии 5.4 и 5.5 очень даже хороши.
    Слабые стороны есть в любом языке, главное уметь использовать сильные.
    PHP достаточно зрелый язык, на котором можно писать качественные и современные сайты.
    Ответ написан
    Комментировать
  • Как отследить вызов JS на сайте?

    maxaon
    @maxaon
    Ctrl+Shift+F (в ChromeDevTools) и ищите по тексту или регуляркам. Но лучший способ IDE.
    Если нет IDE - тогда ищите по файлам руками, или с помощью поиска текста в файлах.
    Ответ написан
    4 комментария
  • html5 inputы, submit и javascript. Как подружить?

    Вешайте скрипт отправки формы не на клик, а на submit формы, тогда заработает стандартная валидация по html5 атрибутам type=emal, required и т.п.

    В вашем случае сначала происходит отправка, потом валидация. В этом способе наоборот, сначала нативная валидация, потом submit.

    document.subscribe.onsubmit = function (e){
         sendMail();
         e.preventDefault();
        }
    Ответ написан
    1 комментарий
  • Может ли NodeJS использоваться как основа для крупного проекта?

    @kazmiruk
    @d00mko видимо не потрудился прочитать статью, прежде чем посоветовать ее Вам. В статье как раз пытаются избавиться от мифов вокруг ноды.
    По сути вопроса - нода вполне подходит для проекта любого размера и сложности (как и пхп, раби, питон, ява и т.п.) Никогда в жизни не сталкивался с ситуацией, что язык становился узким местом в веб приложении. Если Вы с этим столкнетесь, то значит Ваша архитектура уже идеальна, у вас миллионы пользователей и у Вас миллиарды денег, чтобы взять и переписать все с нуля где-нибудь на побережье океана попивая мохито, принесенное личным барменом.
    Ява - готовьтесь к тому, что Вам надо МНОГО оперативной памяти. Разработка будет вестись долго, но большинство глупых ошибок Вы избежите в силу особенностей языка.
    ПХП - готовьтесь к тому, что в Вашем коде будут появляться какашки, так как из всех пхп кодеров лишь доли процента могут написать хороший код. Это действительно очень трудно, когда язык сам манит писать все больше и больше какашек ) Лишь просветленные могут удержаться )
    Нода - Вас ждет мир непонятного асинхронного кода, но как только наступит просветление, то Вы будете писать намного более эффективные приложения, чем Ваши товарищи пхпщники ) Наилучшее применение - чаты, кометы и т.п. Но и в качестве веб-сервера чувствует себя замечательно.
    Питон - можно использовать и асинхронный подход и синхронный. Памяти жрет намного меньше, чем Java (личный опыт. разница была почти в 7 раз). По скорости работы практически не уступает яве. По скорости разработки разрывает ее в клочья
    Раби - ничего не могу сказать дельного, но синтаксис мне не нравится.
    Эрланг - если Вы действительно суровы и Вам нужна максимальная производительность - это Ваш выбор. Столько боли и страдания Вам не доставит ни один язык. Вы можете часами сидеть и тупить над одной строчкой кода, но каждый раз после написания такой строчки Вы будете впадать в экстаз ) Да и пока вы часами тупили над одной строчкой в эрланге на другом языке вам бы пришлось написать 200 строчек. Хардкор вариант, есть много тестов, уроков и примеров, но сам бы я не рискнул начинать проект на нем, так как моих знаний не достаточно, а найти разработчика - нереально.
    Вообще, не пишите серьезные проекты на том, что хотите изучить или то, что модно. Пишите на языке, который лучше всего знаете.
    Ответ написан
    7 комментариев
  • Присвоение индексов строкам в таблице

    Tyranron
    @Tyranron
    UPDATE `board`
    SET `position`=`position`+1
    WHERE `position`>='$myPosition' AND `id`<>'$myID'

    Хотя я не вижу смысла делать отдельно поле для позиции. Этим самым Вы только мороки себе добавляете, так как нужно синхронизировать 2 поля, которые по сути означают одно и то же - место игрока в рейтинге. Достаточно `id` и `scores`. При выборке делаете ORDER BY `scores` ASC/DESC и уже в PHP проставляете порядковые номера по ходу разбора результатов запроса. Если нужна позиция по конкретному `id`, то:
    SELECT COUNT(`b`.`id`) AS `position`
    FROM `board` AS `b` JOIN `board` AS `my`
    ON(`b`.`scores`>`my`.`scores` OR (`b`.`scores`=`my`.`scores` AND `b`.`id`<`my`.`id`))
    WHERE `my`.`id`='$myID'

    ...если одним запросом, но лучше 2мя: сначала выбрать кол-во очков для конкретного `id`, потом посчитать позицию исходя из `id` и очков.
    Лучше увеличить сложность выборки, чем обновлять пол-таблицы каждый раз.
    Ответ написан
    2 комментария
  • Тонкости при работе с wif-fi 5Ghz

    night_elf
    @night_elf
    Скорее всего у девайсов разные country code. Для разных стран доступны разные каналы.
    Я на своем роутере посто сменил country code:

    $ ssh 192.168.0.1 
     
     
    ASUSWRT RT-AC66U_3.0.0.4 Tue Sep 25 02:42:17 UTC 2012
    root@(none):/tmp/home/root# nvram show | grep -E 'ccode|regrev|regulation|wl[0-9]_country|wl[0-9]_reg_mode' | sort
    size: 38607 bytes (26929 left)
    pci/1/1/ccode=EU
    pci/1/1/regrev=15
    pci/2/1/ccode=EU
    pci/2/1/regrev=15
    regulation_domain=EU
    regulation_domain_5G=EU
    wl0_country_code=EU
    wl0_country_rev=15
    wl0_reg_mode=off
    wl1_country_code=EU
    wl1_country_rev=15
    wl1_reg_mode=off
    root@(none):/tmp/home/root# nvram set pci/1/1/ccode=CN
    root@(none):/tmp/home/root# nvram set pci/1/1/regrev=5
    root@(none):/tmp/home/root# nvram set pci/2/1/ccode=CN
    root@(none):/tmp/home/root# nvram set pci/2/1/regrev=5
    root@(none):/tmp/home/root# nvram set regulation_domain=CN
    root@(none):/tmp/home/root# nvram set regulation_domain_5G=CN
    root@(none):/tmp/home/root# nvram set wl0_country_code=CN
    root@(none):/tmp/home/root# nvram set wl0_country_rev=5
    root@(none):/tmp/home/root# nvram set wl1_country_code=CN
    root@(none):/tmp/home/root# nvram set wl1_country_rev=5
    root@(none):/tmp/home/root# nvram show | grep -E 'ccode|regrev|regulation|wl[0-9]_country|wl[0-9]_reg_mode' | sort 
    size: 38599 bytes (26937 left)
    pci/1/1/ccode=CN
    pci/1/1/regrev=5
    pci/2/1/ccode=CN
    pci/2/1/regrev=5
    regulation_domain=CN
    regulation_domain_5G=CN
    wl0_country_code=CN
    wl0_country_rev=5
    wl0_reg_mode=off
    wl1_country_code=CN
    wl1_country_rev=5
    wl1_reg_mode=off
    root@(none):/tmp/home/root# nvram commit 
    root@(none):/tmp/home/root# reboot
    Ответ написан
    1 комментарий
  • Какое ваше мнение о Drupal?

    kalabro
    @kalabro
    Во-первых, я полностью согласна с @andead. Спасибо за отличный ответ, man!

    Позволю себе небольшие дополнения как битрикс-разработчик.
    1) Почему считается, что друпал сложно темизировать?

    Наговнокодить прямо в шаблоне большого ума не надо.

    Правильно темизировать и битрикс нелегко. Другой разговор, что оставить в шаблоне друпала $_SESSION в 100 раз хуже, чем оставить тоже самое в шаблоне битрикса. Процесс темизации и той, и другой CMS должен контролировать понимающий систему программист.

    2) Действительно ли друпал очень медленный? Медленней ли он того же битрикса?

    В битриксе каждый «блок» (часть страницы) можно независимо закешировать на основе идентификаторов групп пользователя, значений фильтра каталога и чего угодно. Обёртка $this->StartResultCache() как отче наш в любом коде и в стандартных компонентах из коробки. В итоге страница быстро собирается из кешей для людей с сессией, авторизацией и т.д. В друпале нужно стремиться к этому же, но для этого приходится писать свои кеш-плагины к Panels, шаманить с Expire и даже ESI и понимать всякие тонкости работы друпал-кеширования (drupalace.ru/tags/cache).
    В битриксе всякие панели производительности и мониторы качества из коробки. В друпале это "энтерпрайз"-услуга :)

    3) Этот вопрос к тем, кто имел дело с интернет-магазинами на друпале: стоит ли вообще делать на нем интернет-магазины? Мое мнение таково, что удобнее на битриксе

    Для России того же мнения придерживаюсь. Видимо, потому что умею запускать магазины на битриксе и не умею на друпале.

    5) Есть люди, которые сравнивают инфоблоки битрикса с нодами друпала. Как по мне - ноды в кипе с таксономией в пух и прах разбивают инфоблоки. У кого другое мнение и почему?

    Инфоблоки гораздо мощнее просто нод из коробки. Опыт работы с тем и другим >2 лет. Сравнивать можно сущности в друпале и инфоблоки в битриксе. Вот здесь уже друпал (вместе с Entity API, конечно) смотрится гораздо серьёзней и гибче. Битрикс выглядит глупо, когда нужно что-то странное, друпал же позволяет воротить что угодно.

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

    Webform/Entityforms гораздо проще битрикса в плане собственно форм, просто надо привыкнуть. А вот email-подсистема в друпале послабее. В друпале если что-то делают, то только со вселенским размахом :) Как пример, Message Stack :)

    Действительно ли вам показался друпал сложным в освоении (как программистам, разумеется) в сравнении с другими системами?

    Спустя 2 года я нахожу что-то новое и очень крутое в друпале или благодаря друпалу. Не могу ответить на этот вопрос, т.к. продолжаю учиться :)

    Как вы темизировали хлебные крошки и постраничную навигацию?

    Пользуясь случаем, пропиарю модуль Path Breadcrumbs, ко-мейнтейнером которого гордо являюсь. В нём переопределяется theme_breadcrumb() для добавления поддержки Rich Snippets: drupalcode.org/project/path_breadcrumbs.git/blob/c...
    С помощью того же hook_theme_registry_alter() вы можете заставить крошки темизироваться через файл, а не функцию.

    Друпал люблю больше из-за качества кода и сообщества.
    Ответ написан
    4 комментария
  • HTML верстка. Цены

    Вопрос конечно интересный. У каждого свои расценки. Тут надо определиться или это почасовая оплата, либо оплата за проект.
    "стандартные цены"?? задайте себе вопрос что такое "стандартная вёрстка html".
    Что хочу сказать - что цены разные. Вёрстка "стандартного" сайта-визитки на 5 страниц на хтмл лично у меня от 1.5 тр. Знаю фринлансеров, которые берутся начиная от 2.5тр.
    Ответ написан
    Комментировать
  • Какое ваше мнение о Drupal?

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

    Для магазинов - предпочитаю однозначно Opencart.
    Для всего остального... из распространенных мне удобнее - Джумла. Она отлично поддается любой кастомизации. К тому же - очень легко чистится и оптимизируется, после чего просто летает.
    Ответ написан
    2 комментария
  • Время получения результата ajax?

    Вам это ни о чем не говорит ? Смотрите что выполняется на сервере, явно там проблема.
    Ответ написан
    Комментировать