Опробовал «в реальной жизни» озвученную два года назад идею о том, что большинство веб-сайтов можно и нужно рассматривать, как красивый интерфейс к базе данных. Учитывая то, что я знаю PHP примерно на уровне журнала «Ксакеп», получившийся код мог бы быть и красивше, но вот такой код странички мне уже почти нравится:
require_once 'includes/config.inc';
require_once 'includes/database.inc';
require_once 'widgets/schemeWidget.inc';
require_once 'widgets/partslistWidget.inc';
$snum = isset($_GET['page']) ? $_GET['page'] : 1;
$link = new dbLink();
$scheme = new schemeWidget($link, "SELECT sdesc, sfilename
FROM schemes
WHERE snum='%s';",
$snum);
$scheme->show();
$partslist = new partslistWidget($link, "SELECT shinnernumber, pname, phcatnum, phproducer
FROM parts
INNER JOIN shown_in ON shown_in.pnum=parts.pnum
LEFT OUTER JOIN parts_phys ON parts.pnum=parts_phys.pnum
WHERE snum='%s'
ORDER BY shinnernumber;",
$snum);
$partlist->show();
Понятно, что это очередная попытка переизобрести MVC (точнее, пока просто MV — Model-View, а Controller пока не нужен) — но идея делать сайты по принципу «база данных плюс форматирование результатов запроса» оказалась вполне жизнеспособной. В порядке дальнейшего изобретения велосипедов — а не замахнуться ли на «свой WordPress с блекджеком и шлюхами«?