Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!
Zadejte Vaši e-mailovou adresu:
Kamarád fotí rád?
Přihlas ho k odběru fotomagazínu!
Zadejte e-mailovou adresu kamaráda:
PHP
Náměty od čtenářů - I
redakcni system
30. prosince 2002, 00.00 | Pokračování seriálu o tvorbě vlastního redakčního systému v PHP. Dnes načneme větší kapitolu, a to vzkazy od čtenářů, které nemohou chybět na žádném serveru. V prvním díle tohoto povídání i vytvoříme uživatelskou část systému.
Po odmlce se vracíme k seriálu o RS. V dnešním díle začneme povídání o námětech od čtenářů a ukážeme si, jak má vypadat enduser část. Admin část si probereme později.Náměty od čtenářou jsou důležitou součástí snad každého redakčního systému. Pomáhají zlepšit jak vzhled, tak služby nabízené serverem k větší spokojenosti zákazníků, která je tím nejdůležitějším faktorem k zvýšení návštěvnosti, populatrity a nevím čeho ještě. U komerčních projektů to samozřejmě vede ke zvýšení zisku.....
Začneme databází. Ta má následující strukturu:
|
Vysvětlíme si strukturu. ID je jednoznačný identifikátor, podle kterého budeme určovat zprávu pro smazání a úpravu. Jmeno je položka pro jméno odesílatele. Email nemusí být vyplněn. Pokud si čtenář nepřeje být kontaktován, nemusí ho vyplňovat. Text obsahuje samotný text příspěvku. Datum je doba, kdy byl námět vložen, počítana v sekundách od 1. ledna 1970. Do ip budeme ukládat IP adresu počítače, ze kterého nás přispěvovatel navštívil. Význam to má spíše statistický než praktický. Dalo by se samozřejmě jít ještě dál a dostat se až ke kraji, městu či dokonce škole, ze které si čtenář naše stránky prohlížel. To je ale na jiný článek. Položka zobrazit nám určí, jestli se má zobrazit čtenářům. Stavem určíme, je-li je námět přečtený, zodpovězený či netknutý od doby, kdy byl vložen. Na konec je položka reakce, do které se bude ukládat reakce na námět.
Asi se ptáte, kam vložit formulář pro náměty. Dát mu novou stránku nebo ho umístit někam do rohu? Já jsem zvolil druhou možnost a vložil jsem ho do scriptu levy.php. Tady je nová část spolu s koncem toho, co již máme:
|
Přepínač proměnné $vysledek nám bude zajišťovat vypisování chybových hlášek nebo bezchybného provedení. Zbytek je myslím, jasný a tak rovnou přistoupím ke scriptu namet_zapis.php, který nám zadané údaje zpracuje:
|
Na začátku zajistíme, že se stránka nebude cachovat a spojíme se s databází. Pokud uživatel zadal namet i jmeno, vložíme údaje do databáze. Jediné vysvětlení snad zaslouží proměnná $REMOTE_ADDR. Ta obsahuje IP adresu, ze které přišel požadavek. Pokud chybí námět či jméno, vrátí se v GET parametrech zprávy, které vypíší chybovou hlášku - viz. výše. Jelikož se mohou vyskytnou i tací návštěvníci, kteří se budou snažit nabourat náš systém, máme zde funkce HTMLSpecialChars(), které nám (pro nás) nebezpečné znaky nahradí přívětivějšími pro HTML formátování na stránce.
Tím máme hotovou enduser část pro zápis námětů. Příště si ukážeme jejich zpracování v admincentru a nakonec si ještě probereme zobrazování námětů a šéfredaktorových reakcí na náměty čtenářům.
Obsah seriálu (více o seriálu):
- Redakční systém I.
- Redakční systém II.
- Redakční systém III.
- Redakční Systém IV.
- Redakční systém V.
- Redakční systém VI.
- Redakční systém VII.
- Redakční systém VIII
- Redakční systém - tisk
- Redakční systém - generování
- Redakční systém - generování II.
- Redakční systém - generování III.
- Redakční systém - generování IV
- Redakční systém - generování V.
- Redakční systém - krátké zprávy a CSS styly
- Upload obrázků
- Upload - II a logout
- Schvalování článků - II
- Dodatečné přidání obrázku
- Regulární výrazy I
- Regulární výrazy II
- Redakční systém: Fulltext - I.
- Fulltext - II
- Co s RS?
- Optimalizace databáze v RS
- Interní vzkazy - I
- Interní vzkazy - II
- Interní vzkazy - III
- Náměty od čtenářů - I
- Náměty od čtenářů - II
- Náměty od čtenářů - III
- Náměty od čtenářů - IV
- Náhrada FTP
- Ankety
-
25. listopadu 2012
-
30. srpna 2002
-
10. října 2002
-
4. listopadu 2002
-
12. září 2002
-
25. listopadu 2012
-
28. července 1998
-
31. července 1998
-
28. srpna 1998
-
6. prosince 2000
-
27. prosince 2007
-
4. května 2007