Архив

WordPress — gallery shorttag highslide

Два примера, для решения одной и той же задачи.

В первом примере полный идиотизм, во втором хорошее решение. Вот теперь вопрос, почему большая часть всех CMS работает как первый пример. ?

Читать далее

Варианты разные

В детстве можно всегда лезть в драку, прыгать с тарзанки и гонять на велосипеде быстрее всех, ежегодно ломая себе что–нибудь. А можно обходить хулиганов стороной и вообще предпочитать телевизор. В 15 тебе будет наплевать, что у Васи был круче велосипед и все окрестные пацаны его боялись. 15 лет уже, взрослые люди, к чему этот детсад.

В школе можно учиться на одни пятерки, учить химию и писать сочинения про Онегина, действительно размышляя о мотивах главных героев. А можно обойтись шаблонными фразами, домашку списать и закончить четверть как максимум без троек. В 18 лет внезапно выяснится, что с полным трояков аттестатом можно поступать хоть в МГУ, всем похуй. Школа она и есть школа, все ее заканчивают.

В институте можно ходить на все лекции и семинары, записаться на три интересных спецсема, выбрать клевого научника и двигать с ним что–нибудь актуальное, тусуясь на конференциях. Можно выебать всех клевых однокурсниц, ездить в Крым автостопом, отвисая с хиппанами в Лисьей Бухте, основать митол–группу и записать альбом. А можно сидеть в интернетах и контре по ночам, пить пиво с такими же задротами, никуда не ходить, ботать экзамены в последнюю ночь и получать свой законный трояк. «Обзор существующих методов…» сойдет за тему диплома, потерять девственность по пьяни поможет подвернувшаяся каракатица а соседи по общаге сойдут за друзей.

Читать далее

Кэширование MySQL - MySimpleCache

Собственно возвращаясь к прошлому посту - PHP Кэширование MySQL, хочу сказать спасибо всем, кто помог советами.

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

Проблем не заметил, все работает хорошо, нагрузка на базу данных значительно упала, а это именно то, что и требовалось.

Проект поселился на github.com, маловероятно, но возможно он еще будет обновляться, так что актуальная версия всегда там.

github.com

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

При вызове mysql_query, скрипт попытается закешировать данный запрос и либо вернет ссылку на закешированный массив, либо вернет ссылку на ресурс.

Все последующие операции будут проверять является ли ссылка ресурсом и уже по обстоятельствам будут либо доставать данные из memcache, либо получать их напрямую.

Буду рад любым комментариям и повторяю еще раз, что крайне не рекомендую прикручивать этот скрипт на сайты которые чуть более серьезнее чем сателит.


PHP Кеширование Mysql

mysql

UPD: Рабочая версия php MySimpleCache

Други, мне требуется ваша помощь или совет.

Такая ситуация, есть большая куча сайтов, написанных давным-давно. Они представляют из себя кучу файлов, в которых идет в перемешку php/html/sql запросы. Ни о каких современных паттернах программирования там речи нету. Переписывать эти сайты нет ни времени, ни желания, но они ужастно грузят БД.

Задача добавить на эти сайты кеширование sql запросов. Переписывать их и править дело очень не благодарное и потребует кучу времени.

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

mysql_query
mysql_fetch_assoc
mysql_fetch_array
mysql_num_rows
mysql_result
....

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

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

Теперь главное, я уверен что должны быть аналоги, а я пытаюсь изобрести велосипед. Возможно вы сталкивались с такими вещами и их решениями. Ну или просто можете высказать свое мнение по этому поводу. Не поленитесь, буду очень благодарен.


Обфускатор Javascript

На Хабре нашел ссылку на отличный инструмент для шифрования js от чужих глаз:

http://utf-8.jp/public/jjencode.html

Например, alert("test"); превращается вот в такую конструкцию:

Читать далее

Ну вот и обновились

blog.rpsl.info

Мелочей еще конечно много, но буду править и постараюсь снова начать писать.


Чат для vbulletin

Главное что бы было желания, все остальное уже дело техники.

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

Несколько выходных назад я решил вернуться к этому вопросу, скачал стандартный чат для форума, но он как и все остальные подобные реализации являлся унылым говном. Это глупое окошко которое предлагается разместить после навбара или перед футером... Решение было принято моментально, а бутылка ликера добавила мне решительности.

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

Живой пример на http://forum.centrgroup.ru (для зарегистрированных) Если кому интересна сама реализация - пишите в комменты, постараюсь рассказать.


Livejournal in google reader

livejournal

Давным давно, в одной далекой галактике, я сделал себе standalone блог и livejournal, потихоньку начал пропадать из списка сайтов которые я посещаю ежедневно. Учитывая, что я читаю около пары сотен человек, то вариант захождения раз в неделю и чтения всех записей начинал сильно утомлять, т.к. трудно осилить пару сотен постов. В то же время я начал активно пользоваться google reader'ом для чтения rss каналов сайтов которые мне интересны.

К сожалению и по не сильно понятным мне причинам, livejournal не даёт читать френделенту через rss, но зато он позволяет подписаться на rss конкретных пользователей которые вам интересны. В то же время, в Google reader есть возможность сортировать каналы по папкам, и если читать сразу всю папку, то получается как раз подобие френдленты. В целом всё хорошо, только этот вариант не подходит тем, у кого друзья пишут под замочные записи, но и тут тоже livejournal предусмотрел вариант аутентификации, для получения ленты с закрытыми записями.

В интернете есть различные серивисы, включая pipes.yahoo.com и freemyfeed.com, которые могут выступать в роли прокси, но меня не устраивает вариант, когда мои пароли будут храниться не понятно где. Поэтому я сделал маленький прокси, которые автоматически авторизует вас для google reader'а и на выходе вы получаете полный feed ваших друзей.

Читать далее

Twitter it для vBulletin

На днях, мне захотелось сделать наш форум еще более интегрированным в, не побоюсь этого слова, великую социальную сеть twitter.

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

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

В итоге я просто создал модуль который генерирует ссылку, а в шаблон добавил простую кнопку и ву-аля.

twitterit

Читать далее

Фотоблоги / фотоблог / фото блог

Честно говоря, я очень удивлен, что у нас не очень популярны фотоблоги. У всех есть мобильные телефоны, почти у всех они с фото камерами, у большинства с камерами приемлемого качества. Многие используют твиттер, почту, icq на телефоне, но мало кто делает фотографии и выкладывает их в сеть.

photoblog

Сейчас я расскажу о нескольких способах организации этого дела.

Фотоблог — вебсайт, содержащий в своей основе регулярно публикуемые фотографии, часто сопровождаемые названием снимка, датой/временем, текстовым описанием, сведениями Exif и др. Фотоблог часто содержит возможность добавления комментариев, выставления рейтинга и т. п. Фотоблог может поддерживать технологию RSS или Atom.

Фотоблог может быть авторским или коллективным. Встречаются мобильные фотоблоги (сделанные с помощью фотокамер, встроенные в мобильные телефоны). Как разновидность, появились текстовые фотоблоги (в которых фотография заменена авторским текстовым описанием).

wikipedia

Читать далее