Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /home/www/novacisko.cz/subdomains/bredy/init.php on line 11

Warning: mysql_connect(): Headers and client library minor version mismatch. Headers:50562 Library:100020 in /home/www/novacisko.cz/subdomains/bredy/init.php on line 11

Warning: Cannot modify header information - headers already sent by (output started at /home/www/novacisko.cz/subdomains/bredy/init.php:11) in /home/www/novacisko.cz/subdomains/bredy/index.php on line 38
Popis projektu "Bredyho všehochuť" - Bredyho blog - Ondřej Novák
Bredyho blog - Ondřej Novák

Popis projektu "Bredyho všehochuť"

Stručný popis projektu


Cíl projektu

Jednouživatelský blog, snadno instalovatelný na libovolný MYSQL/PHP hosting. Snadná konfiguratelnost, obsah je tvořen dynamicky včetně rozvržení do kategorii. Lehká inspirace systémem Wiki

Hlavním smyslem projektu je velmi jednoduchý a uživatelský přijemný systém pro správu a organizaci veřejného děníčku. Jak uživatelé tak dodavatel obsahu by měl mít snadný přístup k článkům odkudkoliv. Organizace článků do témat a kategorii by měla být stejně snadná, jako samotné psaní článků. I správa kategorii (které nejsou pevné) by měla být snadná. Každý článek může být zařazen do vícero kategorii (nebo do žádné). Musí být snadné kdykoliv kategorii změnit, přidat, nebo kategorie přejmenovávat. Také musí být umožněno měnit strom podkategorií, přenášet kategorie mezi podstromy.

Popis řešení

Blog sestává se s několika částí. Jednak je tu část spravující kategorie a pak část spravující články. Poslední částí je diskuze pod každým článkem.

Kategorie jsou identifikovány jednoznačným jménem. Jméno kategorie používá tečkový formát oddělující cestu (ve stromě kategorií) k příslušné kategorii.
Např:

Počítače
Počítače.Programování.
Počítače.Programování.Javascript
Počítače.Zajímavé aplikace

Přesun kategorie do jiné části podstromu se tedy dociluje pouhým přejmenováním kategorie.
Celá cesta uvedená před tečkou by měla existovat. Systém si ale poradí i případě, že cesta neexistuje. V tom případě tuto kategorii dočasně pro účely zobrazení vytvoří (Pokud pak má mít kategorie jméno, musí se vytvořit).

Každý článek se sestává s hlavičky nesoucí nadpis a krátky popis. Obsah článku je pak organizován do sekcí. Každá sekce přitom může obsahovat text, nebo libovolný attachment (soubor). Attachment může obsahovat text popisu. Sekce článku má definovaný i typ attachmentu.

  • Text - soubor v text/plain (UTF-8 kódování) - zobrazí se jako preformáted text
  • Binary - libovolný binární soubor ke stažení
  • Obrázek s náhledem - zobrazí se jako malý obrázek, více obrázků v jednom článku pak vytvoří galerii - na obrázek lze posléze kliknout a otevřít větší verzi
  • Obrízek ve stránce - zobrazí se obrázek tak jak je (1:1)
  • Spustitelné - souborem je PHP Skript
  • Javascript - souborem je JS soubor a bude vložen do stránky přes příslušný script tag
  • Nezobrazovat tuto sekci - sekce se nezobrazí, soubor bude skryt (zobrazí se pouze adminovi).

Vložené soubory lze i sdílet, stačí připojit přílohu pouze jménem. Pokud již soubor existuje, vytvoří se na něj další link. Při mazání příspěvků se systém postará, aby nebyly smazány soubory, na které stále ještě existují linky.

Diskuze není ničím jiným, než tabulkou příspěvků, které se rozlišují číslem článku a případně číslem sekcí (u diskuzí v galerii)

Popis použitých technologií

PHP - verze 5.0 - všechno jsou původní zdrojové texty, žádné templaty.
MySQL - použitá verze 5.0
Javascript - je použit na některých částech stránky, avšak stránka si poradí i bez něho.

Popis zabezpečení

Zabezpečení Admin je řešeno HTTP autentifikací Basic (bylo by možné v budoucny vylepšit).
Všechny výkonné akce s databází by měli být povolené jen pro admina (ochrana proti přímého vložení adresy) - pouze do diskuze lze psát libovolně.

Zabezpečení proti vložení spustitelného kódu - veškerý text je přijímán jako plain-text, a tak je s ním i nakládáno. Všechny nebezpečné znaky se překládají na HTML ekvivalentní entity. Pro formátování se používají speciální Wiki tágy viz Návod k psaní příspěvků.

Zabezpečení proti database injecting - předpokládá se, že server má aktivovanou funkcí magic_quotes, čímž umožní escapování nebezpečných znaků

vytvořeno: 22.5.2006 11:59:54, změněno: 14.11.2006 13:07:36
Jsou informace v článku pro Vás užitečné?
  • (1)
  • (1)
  • (1)
  • (1)
  • (1)
Kategorie: Chcete tento blog?
Nick nebo OpenID
Vzkaz
 
25.7.2016 20:02:14

IeTQog2IGtn

A little rationality lifts the quality of the debate here. Thanks for cogtributinn!

Podobné články

Úvod do obecného OOP 1. díl

V tomto seriálu bych se chtěl věnovat obecnému OOP. První díl budiž predmluvou a vymezením pojmů.

Integrace Subversion do Microsoft Visual Studio

Ovládejte Subversion přímo z prostředí Visual Studia. Následující návod vám ukáže jak

Jak na paralelní překlad ve VC8

Máte doma procesor s DualCore? Nebo snad máte víc jader? A vadí vám, že VC8 Express moc dobře nevyužije tuto vlastnost? Závidíte linuxakům příkaz make -jN? Mám pro Vás dobrou zprávu.

GarbageCollector v C++, prototyp

Neustále slýchám, jak v C++ chybí Garbage Collector. Ač si o tomto nástroji myslím své, a v zásadě jsem proti zavedení GC v C++, přijal jsem tyto nářky jako výzvu.

Jak předělat dvou-parametrovou šablonu na jedno-parametrovou

Popis jednoduchého triku
Reklama: