Pull to refresh
5
0
varcharik @muhomor

User

Send message

EXPLAIN — Самая мощная команда MySQL

Reading time2 min
Views159K
Самая мощная команда в MySQL – это EXPLAIN. EXPLAIN может в точности рассказать вам, что происходит, когда вы выполняете запрос. Эта информация позволит вам обнаружить медленные запросы и сократить время, затрачиваемое на обработку запроса, что впоследствии может значительно ускорить работу вашего приложения.
Читать дальше →
Total votes 26: ↑22 and ↓4+18
Comments33

Триггеры в MySQL

Reading time2 min
Views298K
Триггер — это хранимая процедура, которая не вызывается непосредственно, а исполняется при наступлении определенного события ( вставка, удаление, обновление строки ).
Поддержка триггеров в MySQL началась с версии 5.0.2
Читать дальше →
Total votes 54: ↑50 and ↓4+46
Comments49

Наследование шаблонов в Smarty

Reading time4 min
Views12K
Когда-то, давным-давно, мне пришлось использовать небезызвестный шаблонизатор Smarty. Сначала я, понятное дело, возмущался и кричал, какая же гадость эта заливная рыба Smarty, а потом «распробовал» и втянулся. Те удобства, которые он давал, с лихвой компенсировали мысли о том, что есть и более быстрые шаблонные движки.

Шаблоны я обычно строил с помощью инклюдов: в начале подключался header.tpl, в конце — footer.tpl, в середине ещё что-нибудь нужное. В целом разметка получалась довольно аккуратной, но не проходило ощущение, что не хватает чего-то важного. Окончательно понимание этого чего-то появилось, когда мне случилось написать простенькое приложение на Django. И это «что-то», как все поняли, оказалось наследованием шаблонов. Простая, как и всё гениальное, идея позволяла существенно упростить шаблоны и избавиться от дублирующих блоков.

А почему бы не реализовать подобный механизм в Smarty?
Total votes 64: ↑52 and ↓12+40
Comments54

Стилизация файл-инпутов

Reading time5 min
Views38K
Результат стилизации файл-инпута
Привет. Сегодня я хочу вам рассказать о том, как можно изменить внешний вид файлового инпута.

Дело в том, что изменение внешнего вида инпутов, как правило, не вызывает трудностей, но этот вид инпутов отличается от остальных. В первую очередь это связано с безопасностью, во вторую с тем, что каждый браузер по своему отображает этот элемент, и на это почти нельзя повлиять.
Читать дальше →
Total votes 3: ↑3 and ↓0+3
Comments163

nginx, memcached и SSI

Reading time3 min
Views18K
Моя первая статья, не судите строго...

Приветствую вас, уважаемые хабрадевелоперы!

Многие из вас знают о прекрасном легковесном веб-сервере nginx.
Некоторые также знают, что он умеет работать с memcached.
Но лишь немногие в курсе, при чём здесь SSI и как его можно использовать в связке с nginx и memcached.

Как известно, новое — это хорошо забытое старое. Каждый названный инструмент и технология вам наверняка известны. Я же хочу рассказать о том, как и зачем свалить всё это в одну кучу :)
Читать дальше →
Total votes 4: ↑3 and ↓1+2
Comments93

Города России в именительном, предложном (местном) и родительном падеже.

Reading time1 min
Views8.7K
Приняв во внимание все замечания из предыдущего поста с базой городов, мы обновили ее и добавили еще родительный падеж. Теперь база отвечает на вопрос «Откуда?». Например: Вася из Ярославля.

Скачать:
  1. CSV
  2. MySQL

Автоматическая обработка: Jetfish
Вычитка и ручная корректировка Sofrus

Как и в прошлый раз, при желании, выражайте респект и уважуху им, а не мне. Я просто их прикрываю.
Total votes 111: ↑103 and ↓8+95
Comments24

Опубликованы стандарты мобильных сайтов

Reading time2 min
Views1.1K
Есть такой консорциум — W3C, который известен тем, что разрабатывает различные стандарты для интернет сайтов. На этот раз они разработали стандарт мобильных сайтов. Другими словами, W3C упорядочили накопленные знания многих WAP мастеров в одном документе, который назвали Mobile Web Best Practices 1.0. Прочитать его можно тут.

Читать дальше →
Total votes 43: ↑41 and ↓2+39
Comments24

Intel ускоряет разработку мобильных гаджетов под Linux

Reading time1 min
Views939
Как известно, iPhone работает совсем не под Linux, как и огромное множество других мобильных устройств. Это очень печальный факт для тех, кто видит картину мира сквозь призму свободного софта. Вот уже много лет разные компании пытаются разработать и выпустить интернет-гаджеты, работающие под Linux, но ни у кого ничего не получается, за редким исключением (например, Nokia 770 или N800).

Корпорация Intel не собирается мириться с таким положением дел и намерена активизировать усилия по продвижению Linux в качестве стандартной платформы для UMPC, смартфонов и прочих гаджетов. Вчера микроэлектронный гигант объявил о запуске сайта Mobile and Internet Linux Project, на котором собраны все старые и новые проекты компании Intel, посвящённые улучшению ядра Linux и других компонентов. Специально для работы над «мобильными» проектами компания наняла на работу более десятка программистов.

Графический интерфейс мобильного устройства под Linux
Читать дальше →
Total votes 22: ↑21 and ↓1+20
Comments31

Расширение файла средствами PHP

Reading time2 min
Views101K
Получить расширение файла — не самая сложная задача. Но подходов к ее решению может быть несколько. Давайте попробуем рассмотреть несколько возможных вариантов и понять принципы их работы.

Считаете, что вопрос пустяковый и все тут просто как 2 пальца? Может быть, только недавно мне встретилась занятная бредострочка с толстенным регулярным выражением и все для того, что бы просто получить несколько символов в конце строки после последней точки. Зачем? Итак, начнем с пяти наиболее распространенных способов. Без использования регулярных выражений (только не подумайте, что я считаю их злом). Писать буду как просто и доступно, это не научная статья, а авторская заметка.
Поехали?
Total votes 37: ↑22 and ↓15+7
Comments66

Интерфейсы vs. классы

Reading time4 min
Views285K
Обсуждая с различными людьми — в большинстве своём опытными разработчиками — классический труд «Приёмы объектно-ориентированного проектирования. Паттерны проектирования» Гаммы, Хелма и др., я с изумлением встретил полное непонимание одного из базовых подходов ООП — различия классов и интерфейсов.

Читать дальше →
Total votes 4: ↑4 and ↓0+4
Comments161

mysqldump в csv формате

Reading time1 min
Views11K
Значится так — есть задача вытянуть данные из таблицы mysql в простенький csv файлик, дабы его открыть быстренько в excel. Зачем белым людям нужна такая магия — мне никогда не понять, но раз заказчик попросил, то я сделал. Итак, отдаёмся во власть консоли и пишем:
mysqldump -u [USER_NAME] -p "--where=[WHERE]" "--fields-terminated-by=," "--tab=./" [DB_NAME] [TABLE] > [TABLE].txt

Вот и вся любовь (на выходе получим два файла — один с SQL и второй с CSV)

p.s. директория в которой выполняется эта команда должна быть открыта для записи, иначе оно ругаться будет ;)
Total votes 28: ↑20 and ↓8+12
Comments18

Использование кодировок в MySQL >= 4.1

Reading time3 min
Views56K
Когда я только начал осваивать InnoDB и транзакции в MySQL (понадобилось обновить версию с 3.23 до 4.1) столкнулся с проблемой некорректного обмена данными между PHP и MySQL которая проявлялась в том, что сервер вместо символов кириллицы, в запросах генерируемых php-скриптом, вставлял в ячейки таблиц БД знаки вопроса. В процессе «выкуривания» документации, чтения форумов и изучения статей пришло понимание проблемы и нашелся способ ее решения.
Читать дальше →
Total votes 5: ↑5 and ↓0+5
Comments10

Полиморфизм для начинающих

Reading time7 min
Views974K
Полиморфизм — одна из трех основных парадигм ООП. Если говорить кратко, полиморфизм — это способность обьекта использовать методы производного класса, который не существует на момент создания базового. Для тех, кто не особо сведущ в ООП, это, наверно, звучит сложно. Поэтому рассмотрим применение полиморфизма на примере.
Читать дальше →
Total votes 130: ↑90 and ↓40+50
Comments131

Скрипт для скачивания подкастов Python + Google Reader

Reading time4 min
Views5.8K

Введение


Был полезный пост "Автоматизация закачки подкастов на mp3 плеер". Полезный для меня, поскольку ну не использую iTunes и прочий подобный софт (я не хочу это обсуждать :). Мне только нужно скачать пачку подкастов, которые периодически собираются в ленте ридера. И PHPу предпочитаю Python.

Хотелось бы услышать советы — я только изучаю Python. И мне нравится писать посты с примерами для начинающих. Замечаний бы, критики… Но к делу.

Организация процесса

Список подкастерских лент я храню в Google Reader. Ленты помечены своим тегом, и аккуратно лежат в своей папке:


Для выкачивания новых подкастов, попавших в папку Podcasts, написал небольшой скрипт на Python. В качестве основы взял библиотеку />pyrfeed, в которой реализован полезный класс GoogleReader.
Читать дальше →
Total votes 33: ↑31 and ↓2+29
Comments29

Еще один способ генерации PDF

Reading time8 min
Views20K
Где это может пригодиться? При необходимости генерации готовых к печати файлов в web-приложении по уже имеющемуся произвольному жесткому шаблону: сертификаты, бейджи, пропуски и прочее.

Почему PDF? Формат PDF позволяет создавать документы с целым рядом неоспоримых преимуществ: открытость, кроссплатформеность, распространенность и, что очень важно, точностью и неизменностью передачи данных по цепочке создание, просмотр и печать.

В чем соль? В использовании SVG файлов как шаблонов с возможностью подстановки необходимых полей с последующим преобразованием в PDF.

Какие преимущества? Возможность создания и быстрого редактирования очень сложных шаблонов в привычных векторных редакторах, таких как Adobe Illustrator, Corel Draw или Inkscape. Простота программирования и использование только бесплатных программных средств. Еще одним важным преимуществом является возможность прозрачно использовать UTF-8 для вставляемых текстов.

Что для этого надо? Для использования данного метода нужен выделенный сервер с возможностью установки своих приложений (Inkscape и GhostScript) и выполнением system-команд. При этом всё будет работать как на Windows платформе, так и на Linux.
Как это сделать
Total votes 32: ↑30 and ↓2+28
Comments25

И ещё один способ генерации PDF

Reading time4 min
Views9.1K
Навеяно топиком о генрации PDF с помощью ghostscript и Inkscape.

Посмотрев на предложенный вариант, я вспомнил одно очень интересное решение, коим и хочу поделиться.

Итак, генерация PDF с помощью QT

Читать дальше →
Total votes 10: ↑7 and ↓3+4
Comments14

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Date of birth
Registered
Activity