1 |
6daefa8c
|
Petr Lukašík
|
<HTML>
|
2 |
|
|
|
3 |
|
|
<HEAD>
|
4 |
|
|
<META content=text/html; http-equiv=Content-Type>
|
5 |
|
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD W3 HTML//EN">
|
6 |
|
|
<TITLE></TITLE>
|
7 |
|
|
</HEAD>
|
8 |
|
|
|
9 |
|
|
<BODY>
|
10 |
|
|
|
11 |
|
|
<h1><center> Tvorba vnitrnich odkazu</center></h1>
|
12 |
|
|
<br>
|
13 |
|
|
<?
|
14 |
|
|
$pocetOKodkazu = 0;
|
15 |
|
|
@$spojeni = Pg_PConnect("user=vadmin dbname=vseved");
|
16 |
|
|
if ($spojeni)
|
17 |
|
|
{
|
18 |
|
|
$find = "v. t.";
|
19 |
|
|
$pod1 = "lower(webpopis) LIKE '%".AddSlashes($find)."%'";
|
20 |
|
|
$dotaz1 = "SELECT id, webnazev, webpopis FROM ezet WHERE ($pod1)";
|
21 |
|
|
@$vysledek = Pg_Exec($spojeni, "($dotaz1)");
|
22 |
|
|
if ($vysledek)
|
23 |
|
|
{
|
24 |
|
|
$pocethesel = Pg_NumRows ($vysledek);
|
25 |
|
|
if ($pocethesel == 0)
|
26 |
|
|
echo ("Zadne heslo neobsahuje \"v. t.\".<br>\n");
|
27 |
|
|
else
|
28 |
|
|
{
|
29 |
|
|
echo ("Pocet slov, ktere obsahuji \"v. t.\": $pocethesel <br><br>");
|
30 |
|
|
for ($i=0; $i < $pocethesel; $i++)
|
31 |
|
|
{
|
32 |
|
|
list ($idhesla, $nazev1, $popis1) = Pg_Fetch_Array($vysledek, $i);
|
33 |
|
|
$pos1 = StrPos ($popis1, "v. t.");
|
34 |
|
|
$pos2 = StrPos ($popis1, "V. t.");
|
35 |
|
|
if ($pos1 != false)
|
36 |
|
|
$findvzor = "v. t.";
|
37 |
|
|
elseif ($pos2 != false)
|
38 |
|
|
$findvzor = "V. t.";
|
39 |
|
|
else
|
40 |
|
|
{
|
41 |
|
|
echo ("pocet moznych odkazu ".$pocetOKodkazu."<br>");
|
42 |
|
|
echo ("<br><a href=\"../index.php3\">Zpet</a>\n");
|
43 |
|
|
exit;
|
44 |
|
|
}
|
45 |
|
|
//presun textu do OUT vcetne "v. t."
|
46 |
|
|
$textOUT = SubStr ($popis1, 0, StrPos ($popis1, $findvzor)+6);
|
47 |
|
|
// echo ($oktext."<br>");
|
48 |
|
|
|
49 |
|
|
if ( ($vttext = StrStr ($popis1, $findvzor)) != false)
|
50 |
|
|
{
|
51 |
|
|
//odstraneni "v. t."
|
52 |
|
|
$vttext = SubStr ($vttext, 5, StrLen ($vttext)-5);
|
53 |
|
|
// echo ($vttext."<br>");
|
54 |
|
|
$odkazdelka = 0;
|
55 |
|
|
while (($vttext[$odkazdelka] != ".") && ($vttext[$odkazdelka] != ")") && ($vttext[$odkazdelka] != ",") && ($vttext[$odkazdelka] != ";"))
|
56 |
|
|
$odkazdelka++;
|
57 |
|
|
|
58 |
|
|
//ziskani textu odkazu
|
59 |
|
|
$odkaztext = SubStr ($vttext, 1 , $odkazdelka-1);
|
60 |
|
|
|
61 |
|
|
// echo ($odkaztext."<br>");
|
62 |
|
|
|
63 |
|
|
//hledani v databazi
|
64 |
|
|
$pod2 = "lower(webnazev) LIKE lower('".$odkaztext."%') ";
|
65 |
|
|
$dotaz2 = "SELECT id, webnazev FROM ezet WHERE ($pod2)";
|
66 |
|
|
$vysledek2 = Pg_Exec($spojeni, "($dotaz2)");
|
67 |
|
|
if ($vysledek2)
|
68 |
|
|
{
|
69 |
|
|
$pocethesel2 = Pg_NumRows ($vysledek2);
|
70 |
|
|
if ($pocethesel2 == false)
|
71 |
|
|
{
|
72 |
|
|
// echo ("Zadne heslo pro dany odkaz neni!<br><br>\n");
|
73 |
|
|
echo ("\n");
|
74 |
|
|
}
|
75 |
|
|
else
|
76 |
|
|
{
|
77 |
|
|
list ($idhesla2, $nazev2) = Pg_Fetch_Array($vysledek2, 0);
|
78 |
|
|
//je jeste jmeno odkazu mozne?
|
79 |
|
|
if ( (Strlen ($nazev2) < Strlen ($odkaztext) +5) && (StrLen ($odkaztext) > 2) )
|
80 |
|
|
{
|
81 |
|
|
$textOUT .= "<a href=\"./monwhite.php3?idhesla=$idhesla2\">$odkaztext</a>";
|
82 |
|
|
$textzaodkazem = SubStr ($vttext, $odkazdelka, StrLen ($vttext));
|
83 |
|
|
$textOUT .= $textzaodkazem;
|
84 |
|
|
|
85 |
|
|
//vlozeni noveho textu do databaze
|
86 |
|
|
echo ($popis1."<br>\n");
|
87 |
|
|
echo ($textOUT."<br>\n");
|
88 |
|
|
|
89 |
|
|
$Mzpr = Pg_Exec ($spojeni, "UPDATE ezet SET webpopis='".AddSlashes($textOUT)."' WHERE id=$idhesla");
|
90 |
|
|
if ($Mzpr != false)
|
91 |
|
|
echo ("ok<br><br>\n");
|
92 |
|
|
else
|
93 |
|
|
echo ("chyba!<br><br>\n");
|
94 |
|
|
$pocetOKodkazu++;
|
95 |
|
|
}
|
96 |
|
|
}
|
97 |
|
|
}
|
98 |
|
|
}
|
99 |
|
|
}
|
100 |
|
|
}
|
101 |
|
|
}
|
102 |
|
|
else
|
103 |
|
|
echo ("Došlo k chybě při zpracování dotazu v databázi!<br>\n");
|
104 |
|
|
}
|
105 |
|
|
else
|
106 |
|
|
echo ("Nepodařilo se připojit k databázi!<BR>\n");
|
107 |
|
|
echo ("pocet moznych odkazu ".$pocetOKodkazu."<br>");
|
108 |
|
|
echo ("<br><a href=\"../index.php3\">Zpet</a>\n");
|
109 |
|
|
?>
|
110 |
|
|
|
111 |
|
|
</BODY>
|
112 |
|
|
</HTML>
|