Takže nejprve si vytvoříme tabulky v databázi. Budou to
Slova a
HlSlova.
Struktura tabulky Slova:
CREATE TABLE Slova(
slovo varchar(50) NOT NULL,
url
varchar(100) NULL,
nazev varchar(25) NULL,
popis text
NULL,
PRIMARY KEY (slovo)
)
Struktura tabulky HlSlova:
CREATE TABLE HlSlova(
slovo varchar(50) NOT NULL,
pocet
int(11) NULL,
PRIMARY KEY(slovo)
)
Pro jejich vytvoření můžeme použít skript
tabulky.php, který bude vypadat nějak takto:
<? require "opendb.php";
$tabulka1 = "CREATE
TABLE Slova( slovo varchar(50) NOT NULL, url
varchar(100) NULL, nazev varchar(25) NULL, popis text
NULL, PRIMARY KEY (slovo) )";
$tabulka2 = "CREATE
TABLE HlSlova( slovo varchar(50) NOT NULL, pocet int(11)
NULL, PRIMARY KEY(slovo) )";
$vytvor1 =
mysql_query("$tabulka1"); $vytvor2 =
mysql_query("$tabulka2");
if($vytvor1 &&
$vytvor2): echo "Tabulky se udělaly."; echo "<a
href=index.php>Na hlavní
stránku</a>"; else: echo "Tabulky se
neudělaly."; echo "<a href=index.php>Na hlavní
stránku</a>"; endif; ?> |
Jistě jste si všimli, že načítáme soubor
opendb.php, který vypadá nějak takhle:
<? mysql_connect("localhost","user_name","user_pass"); mysql_select_db("databaze"); ?> |
Samozřejmě si změňte údaje!
Teď tedy hlavní stránu tj. index.php, jehož
zdrojový kód je takovýto:
<? require "opendb.php"; ?> <!DOCTYPE
HTML PUBLIC "-//W3C//DTD HTML 4.0
Transitional//EN">
<html> <head> <title>Hledání</title> </head>
<body> <h2>Hledání</h2> <form
action="index.php?akce=najit"
name="najdi"method="post"> <b>Zadej hledané slovo:
</b> <input type="text"
name="slovo"><br> <input type="submit"
value="Najdi
to!"> </form> <hr> <? if($akce=="najit"): //prohledej
databazi jestli v ní je slovo $slovo $prikaz =
mysql_query("SELECT * FROM Slova WHERE slovo LIKE
'$slovo%'");
//pokud jsi v databázi našel výskyt slova
$slovo tak vypiš všechno co obsahuje $slovo $num =
mysql_num_rows($prikaz); if($num > 0): echo
"<h2>Výsledky hledání</h2>"; while($zaz =
mysql_fetch_array($prikaz)): $url = $zaz['url']; $nazev
= $zaz['nazev']; $popis = $zaz['popis']; echo "<a
href=\"$url\">$nazev</a> -
$popis<br>\n"; endwhile; //jinak vypiš že neni
možné najít slovo $slovo else: echo "Není možné najít
slovo $slovo
!!<br>\n"; endif; endif; //prohledej tabulku
HLSlova a pokud tam již takovéto slovo je, //tak k počtu
přičti 1 a pokud není tak ho vlož s počtem 1 $mysql =
mysql_query("SELECT * FROM HlSlova WHERE slovo =
'$slovo'"); $zaznam =
mysql_fetch_array($mysql); $slovo_db =
$zaznam["slovo"];
if($slovo_db==$slovo): mysql_query("UPDATE
HlSlova SET pocet = pocet + 1 WHERE slovo =
'$slovo'"); else: mysql_query("INSERT INTO HlSlova
VALUES ('$slovo',
1)"); endif;
?>
</body> |
Mno a hledání je na světě. Ale ještě ne tak zcela - zbývá nám
totiž skript pridat.php, který přidá údaje do
databáze:
<? require "opendb.php"; ?> <!DOCTYPE
HTML PUBLIC "-//W3C//DTD HTML 4.0
Transitional//EN">
<html> <head> <title>Přidej
slovo k
hledání</title> </head>
<body> <h2>Přidej
slovo k hledání</h2><br> <form
action="pridej.php?akce=pridej"
method="post"> <b>Url:</b> <input
type="text"
name="url"><br> <b>Jméno:</b>
<input type="text"
name="jmeno"><br> <b>Popis:</b>
<input type="text"
name="popis"><br><br> <b>No a už to
<input type="submit" value="odešli">
!</b> </form> <hr> <? if($akce=="pridej"): //přidej
údaje do db $SQL = mysql_query("INSERT INTO Slova VALUES
('$jmeno','$url','$jmeno','$popis')");
if($SQL): echo
"Slovo $jmeno se přidalo do DB<br>\n"; echo "<a
href=index.php>Na hlavní
stránku</a>"; else: echo "Slovo $jmeno se
nepovedlo přidat do DB<br>\n"; echo "<a
href=index.php>Na hlavní
stránku</a>"; endif; endif; ?>
</body> </html> |
A hledání je doopravdy na světě :-). Stažení zde.