Fórum v PHP a MySQL - 1. diel

Nový seriál, ktorý má priniesť čitateľovi predstavu ako sa má vytvoriť fórum za pomoci PHP jazyka a databázového systému MySQL je tu.
V diskusií som sľúbil článok v ktorom sa budeme zaoberať tvorbou fóra. Fórum budeme vytvárať v PHP jazyku za pomoci databázy MySQL, ak už tieto veci máte pripravené a máte aj naštudované ostatné články o PHP a MySQL môžeme začať. Vždy prvé čím by sme mali začať je navrhnutie a následné vytvorenie databázy a databázových tabuliek. Naše tabuľky budú rozdelené na témy a príspevky.
CREATE TABLE temy (

id_temy MEDIUMINT NOT NULL auto_increment,

nadpis VARCHAR(255) NOT NULL,

obsah LONGTEXT NOT NULL,

autor VARCHAR(255) NOT NULL,

email CHAR(255) NOT NULL,

datum DATETIME NOT NULL,

uprava DATETIME NOT NULL,

ip CHAR(15) NOT NULL,

PRIMARY KEY(id_temy)

);

CREATE TABLE prispevky (

id_prispevku INT NOT NULL auto_increment,

obsah LONGTEXT NOT NULL,

autor VARCHAR(255) NOT NULL,

email CHAR(255) NOT NULL,

datum DATETIME NOT NULL,

k_teme MEDIUMINT NOT NULL,

ip CHAR(15) NOT NULL,

PRIMARY KEY(id_prispevku)

);
Prvá tabulka ako s názvu svedčí bude pre témy vo fóre. Id_temy bude primárny kľúč aby každá jedna téma bola jedinečná. Nadpis bude označovať jej názov, obsah bude text odosielatela. Autor bude odosielatel a email bude email odosielatela. Datum je na označenie vytvorenia témy vo fóre. Uprava bude na ukladanie dátumu rovnako ako datum. Uprava bude ale označovať posledné zaslanie príspevku do témy. Podľa toho budú témy zoradené keď ich budeme vypisovať. Posledný stĺpec je ip v ktorom sa bude ukladať IP adresa odosielateľa témy. Ďalej nasleduje tabuľka prispevky v ktorej budú ukladané príspevky zasielané do fóra. Id_prispevku bude tiež primárny kľúč, obsah bude text príspevku, autor bude odosielateľ príspevku a jeho email sa bude ukladať v stĺpci email. Datum bude datum zaslania príspevku. V stĺpci k_teme sa bude ukladať primárny kľúč témy(id_temy). Podľa toho budú príspevky vypísané, ak si otvoríme nejakú tému. IP bude na ukladanie id adresy odosielateľa.

Myslím, že nekonečné vysvetlovanie toho čo na čo bude by už mohlo skončiť, pretože tabuľky a stĺpce hovoria sami za seba na čo budú. Uviedol som to len pre úplných začiatočníkov. Teraz môžeme prejsť k prvému kódu. Bude to kód layoutu. Vytvoríme si súbory top.php a bottom.php a uložíme ich do zložky "layout/". V tom prvom uložíme tento kód:
<? echo"<?xml version="1.0" encoding="ISO-8859-2"?>n"; ?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 

"http://www.w3.org/TR/2000/REC-xhtml1-20000126/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="sk" lang="sk">

<head>

<meta http-equiv="content-type" content="text/html; charset=ISO-8859-2" />

<meta http-equiv="imagetoolbar" content="no" />

<meta name="description" content="<? echo $description; ?>" />

<meta name="keywords" content="<? echo $keywords; ?>" />

<meta name="robots" content="all" />

<meta name="autor" content="PaBi3, http://www.pabi3.com/" />

<link rel="stylesheet" href="layout/styles/style.css" type="text/css" media="all" />

<title><? echo $title; ?></title>

</head>

<body>
Ďalší súbor bude bottom.php:
 </body>

</html>
Oba súbory budú tvoriť šablónu pre fórum. Nakoniec si ešte vytvorte súbor v zložke "layout/styles/style.css". Zatiaľ môže zostať prádzny ale neskôr ho budeme upravovať.

To by bol mimnimálny základ pre fórum a v ďalšom článku si zapíšeme náš prvý PHP kód pre fórum. Zatiaľ bol toto len úvod.
Alternatívne verzie: Text PDF Voice
Autor: PaBi3 · Kategória: Programovanie · Dátum: 10.07.2005 16:34

Komentáre

#1 joseph5 E-mail
04.05.2007 16:24
Zdravim, na akom principe vlastne pracuje MySql? Je mozno spravit PHPcko aj bez neho? ak ano tak ako nato. Bo ja som si stiahol MySql a neviem vôbec nastavenie kde sa zadava spojenie s mojim localhostom, nickom, heslom ...? J.

#2 gorgeous007 E-mail
05.06.2007 21:14
[1] joseph5, PHP samozrejme ide bez MySQL, pretože sú to dve rôzne veci, ktoré môžu bežať samostatne. MySQL je len databáza, ktorá sa dá pomocou PHP použiť. So samotným PHP sa dajú robiť mnohé veci a dáta môžeš namiesto databázy ukladať do nejakých pomocných súborov, čo však nie je práve najlepšie a ani najbezpečnejšie. V každom prípade je lepšie používať MySQL. Ak si stiahol čisto MySQL a nevieš to ponastavovať, aby ti to bežalo, tak to hneď zmaž! V tomto prípade odporúčam program VertrigoServ, ktorý len nainštaluješ (možno bude treba aj reštart) a hneď ti pôjde Apache+PHP+MySQL a ešte zopár blbostí. Nebudeš musieť nič nastavovať. ;-)

Osobné údaje
Captcha
Odpíšte text z obrázku. Rozlišujú sa malé a veľké písmená.
Obsah
Možnosti