Category Archives: MySQL

Иногда WordPress утомляет

Утомляет как процесс донастройки и оптимизации вновь создаваемых блогов, так и вообще использование единого движка.

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

В осмысленности MovableType я сомневаюсь (тоже ведь тяжелая система). Вместо экспериментов с ней я создал блог на TextPattern.

Непривычно, но пока нравится.

Реклама

Оставьте комментарий

Filed under blogs, customization, design, DIY, жопа, полезное, free web tools, internet, lifehack, Linux, marketing, MySQL, разное, халява, opensource, SEO, web tools

Зачем создавать блог?

Блог сегодня — это в огромном, подавляющем большинстве случаев то, что раньше называли “хомяк”. С некоторыми изменениями и усовершенствованиями. А уж блог на блогосервисе — хомяк на 100%, с полагающимися по штату фотками, ежедневными рефлексиями, жалобами на жизнь и информацией о конкретно сейчас прослушиваемой музыкальной теме.

Нам такой блог не нужен.

Мы здесь рассмотрим блоги с авторским, творческим, креативным содержанием.

Креатив бывает двух сортов (на самом деле это одно и то же, но внешне и технологически несколько отличается).

Читаем дальше о создании и оптимизации standalone блога на WordPress!

1 комментарий

Filed under blogs, customization, design, DIY, контекстная реклама, полезное, free web tools, internet, marketing, MySQL, разное, русский, opensource, PR, Russian, SE, SEO, web tools

ToDo list for WordPress

После беглого просмотра имеющихся предложений тов.Гугла, выбрал и поставил ToDo List Plugin для WordPress.

Было бы хорошо иметь такой же на wordpress.com 😦

Плагин, правда, не заработал сразу, т.к. в нем нужно еще исправить pluggable-functions.php на pluggable.php

Вот еще усложнить его надо бы малость — сроки приделать, цвета и всё такое.

Оставьте комментарий

Filed under blogs, MySQL, opensource, organizer

Perl, DBI, utf8

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

Имевшийся готовый генератор html-галереи не подошел, потому что не умел коллекционировать теги и генерировать по ним тематические каталоги.

Поскольку требовалось сделать страницы в кодировке Windows (cp1251), то лучше всего и быстрее всего было бы сделать это на Visual FoxPro — потому что базу проектировать и пополнять удобно. А писать еще и интерфейс для ввода данных мне лень.

Но лицензионного VFP у меня нету (Windows, если поискать, найдется).

Первая приходящая на ум альтернатива — HSQLDB. Но уж больно она аскетична, да и не очень хочется на J2SE писать, для такого Perl больше подходит. И обратились мои взоры к хорошо знакомому MySQL 5, для которого имеется опять-таки свободный phpMyAdmin, который я и намерен использовать для ввода данных. А при необходимости в базе MySQL и файлы можно хранить будет (бэкапить все это хозяйство одним файлом проще).
Забил немного тестовых данных. Как и положено правильному юзеру, все таблицы в базе — в utf8.

Оказывается, Perl не понимает utf8. Задница.

Исследования показали, что в последние несколько месяцев сия проблема активно решалась, однако часть юзеров мигрировала на PostgreSQL, DBD-драйвер которого имел кривую, но работающую поддержку UTF.

Поставил свеженький драйвер DBI:mysql. Нашел. как это должно выглядеть в коде. Примерно так.


#!/usr/bin/perl
...
use DBI;
use encoding 'utf8';
...
$dbh = DBI->connect("DBI:mysql:$database:$hostname",$user, $password);
open(FL, "> catalog.html") || die "Can't open file \n";
binmode(FL, ":utf8");
print FL <<EOF;
абвгдеё\n
123456\n
EOF
$dbh->do("set character set utf8");
$dbh->do("set names utf8");
$statement="select * from tag";
$sth = $dbh->prepare($statement) or die "Can't prepare $statement: $dbh->errstr\n";
$rv = $sth->execute or die "can't execute the query: $sth->errstr";
while(@row = $sth->fetchrow_array) {
print FL "$row[0] $row[1]\n";
}
$sth->finish;
close FL;

Вот без SET NAMES — не работает.

Ну хорошо, хоть так.

1 комментарий

Filed under DBMS, design, drivers, internet, MySQL, Perl