Projekt

Obecné

Profil

Stáhnout (5.26 KB) Statistiky
| Větev: | Tag: | Revize:
1 6daefa8c Petr Lukašík
<?
2
Header("Pragma: no-cache");
3
Header("Cache-Control: no-cache");
4
Header("Expires: ".GMDate("D, d M Y H:i:s")." GMT");
5
?>
6
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
7
8
<html>
9
<head>
10
	<title>Pokusy</title>
11
</head>
12
13
<body>
14
<?
15
16
17
function chyba()
18
	{
19
	 printf("\n<BR>Je tam chyba !!!!!\n<BR>");
20
	 echo "</body></html>";
21
	 exit();
22
	}
23
24
function zpracuj_heslo()
25
	{
26
	  global $heslo;
27
	  global $heslo2;
28
	  global $pocet_hesel;
29
	  global $slovnik;
30
	  global $radek2;
31
	 
32
	  $pocet_hesel++;
33
34
	  $ignoruj=Array("&lt;D:&gt;","&lt;B:&gt;" );  //slova pro ignorovani
35
//	  printf("\n<BR>Heslo je :  %s",$heslo);
36
37
  
38
	  $delka=strlen($heslo);
39
	  for ($k=0;$k<$delka;$k++)
40
		{
41 3249a620 Petr Lukašík
		   if(($heslo[$k]=='[')||($heslo[$k]==']')||($heslo[$k]=='�')||($heslo[$k]=='�')) continue;
42 6daefa8c Petr Lukašík
		   $heslo2.=$heslo[$k];
43
		}
44
 
45
	  for ($k=0;$k<Count($ignoruj);$k++):
46
	  	$delka2=strlen($heslo2);
47
		$pomocny="";
48
//		echo "<BR> Hledam: ".$ignoruj[$k];
49
	
50
		if (($pos=StrPos($heslo2,$ignoruj[$k]))||(($heslo2[0]==$ignoruj[$k][0])&&($heslo2[1]==$ignoruj[$k][1])))
51
    	 {
52
//		  echo " nalezeno na pozici: ".$pos;
53
		  $t=strlen($ignoruj[$k]);					
54
		  if ($pos==0)
55
			{
56
			  for ($t;$t<=$delka2;$t++) { $pomocny.=$heslo2[$t];}
57
			}
58
  		  else
59
			{
60
   			  for ($s=0;$s<$pos;$s++)	{ $pomocny.=$heslo2[$s];}
61
			  for ($pos+$t;$pos+$t<$delka2;$pos++) {$pomocny.=$heslo2[$pos+$t];}
62
			}
63
		  $heslo2=$pomocny;
64
		  $k--;
65
    	 }	
66
// 	    else	echo " Nenalezeno";
67
	  endfor;
68
69
// 	  printf("\n<BR>Upravene heslo je :  %s ",$heslo2);
70
// 	  echo "<BR>Hledam v : ".$slovnik[$heslo2];
71
	  if ($radek2[0]!="") $radek2.=" ";
72
	  if (IsSet($slovnik[$heslo2]))
73
		{
74
75
		 $radek2.=odkaz1;
76
		 $radek2.=($slovnik[$heslo2][1]);
77
		 $radek2.=odkaz2;
78
		 $radek2.=$heslo;
79
		 $radek2.=odkaz3;
80
	 
81
//	     printf ("\n<BR><FONT  color=\"Green\">Nalezeno!<HR></FONT>");
82
		}
83
	  else	
84
		{
85
		 $radek2.=$heslo;
86
//	  	 printf ("\n<BR><FONT  color=\"Red\" >Nenalezeno!<HR></FONT>");
87
		}
88
89
	  $heslo="";
90
	  $heslo2="";
91
  return;
92
}
93
94
95
96
function zpracuj_radek()
97
	{
98
		global $radek;
99
		global $heslo;
100
101
		$i=0;
102
		$d=strlen($radek);
103
		$stav=0;
104
//		printf("\n<BR>Radka je\n<BR> %s\n<BR>",$radek);
105
106
		while ($i<$d)
107
			{
108
				 $c=$radek[$i];
109
				 $i++;
110
				 switch($stav)
111
				   {
112
				    case 0: if($c=='<') {$stav=1;break;}
113
						    if($c==' ') break;
114
						    else {$stav=9;$heslo.=$c;$j=1;break;}
115
116
				    case 1: if(($c=='a')||($c=='A')) {$stav=2;}
117
	    					else chyba();
118
						    break;
119
120
				    case 2: if($c=='>') {$stav=3;}
121
						    break;
122
123
				    case 3: if($c=='<')	{$stav=4;}
124
						    else  {$heslo.=$c;}
125
						    break;
126
127
				    case 4: if (($c=='b')||($c=='B')) {$stav=5;break;}
128
						    if ($c=='/'){$stav=7;zpracuj_heslo();}
129
						    else chyba();
130
					 	    break;
131
132
				    case 5: if((($c=='a')||($c=='A'))&&($radek[$i-2]=='/')) $stav=6;
133
						    break;
134
135
				    case 6: if ($c=='>') {$stav=0;}
136
						    else chyba();
137
						    break;
138
139
				    case 7: if(($c=='a')||($c=='A')) $stav=8;
140
						    else chyba();
141
						    break;
142
143
				    case 8: if($c=='>') {$stav=0;}
144
						    else chyba();
145
						    break;
146
147
				    case 9: if ($c==' ') {zpracuj_heslo(); $stav=0;}
148
						    else {$heslo.=$c;}
149
						    break;
150
151
				    default: break;
152
				   }
153
			}
154
155
  		if ($stav==9) {zpracuj_heslo();}
156
		if (($stav==9)||($stav==0)) /*printf("\n<BR>Probehlo to OK!")*/;
157
		else chyba();
158
159
	return;
160
	}
161
162
163
static $heslo ="";
164
static $heslo2 ="";
165
static $radek ="";
166
static $radek2 ="";
167
static $pocet_hesel=0;
168
static $slovnik;
169
170 3249a620 Petr Lukašík
define("odkaz1","<A HREF=\"http://www.klinopis.cz/utf/search.php?chain=+");
171 6daefa8c Petr Lukašík
define("odkaz2","\">");
172
define("odkaz3","</A>");
173
174
@$spojeni = Pg_Connect("user=dbowner dbname=klinopis");
175
	if (!$spojeni):
176
		echo "Nepodarilo se pripojit k PostgreSQL.<BR>\n";
177
		die ("</body></html>");
178
	endif;
179
180
@$vysledek = Pg_Exec($spojeni, "SELECT item1,refer1 FROM dictrefer order by item1,refer1");
181
	if (!$vysledek):
182
		echo "Doslo k chybe pri zpracovani dotazu v databazi slovicek.<BR>\n";
183
		die ("</body></html>");
184
	endif;
185
	echo "V tabulce dictrefer je ".Pg_NumRows($vysledek)." slovicek.<BR>\n";
186
187
	for ($m=0; $m < Pg_NumRows($vysledek); $m++):
188
	    $zaznam = Pg_Fetch_Array($vysledek, $m);
189
190
		if (IsSet($slovnik[$zaznam["refer1"]]))	
191
			   {
192
			     end ($slovnik[$zaznam["refer1"]]);	
193
			     $d=key($slovnik[$zaznam["refer1"]]);
194
			     $d+=1;
195
			   }
196
		else  $d=1;
197
		$slovnik[$zaznam["refer1"]][$d]=$zaznam["item1"];
198
199
	endfor;
200
201
202
// Vypis slovniku
203
/*
204
reset ($slovnik);
205
do
206
{
207
  $ukazatel=key($slovnik);
208
  reset ($slovnik[$ukazatel]);
209
  echo "<HR><BR>".$ukazatel."<BR>";
210
   do
211
    {
212
     echo key($slovnik[$ukazatel])."<BR>";
213
     echo current($slovnik[$ukazatel])."<BR>";
214
    }while (next($slovnik[$ukazatel]));
215
216
}while (next($slovnik));
217
*/
218
219
220
@$vysledek = Pg_Exec($spojeni, "SELECT * FROM obtexts");
221
	if (!$vysledek):
222
		echo "Doslo k chybe pri zpracovani dotazu v databazi.<BR>\n";
223
		die ("</body></html>");
224
	endif;
225
	echo "V tabulce obtexts je ".Pg_NumRows($vysledek)." radku.<BR>\n";
226
227
	for ($m=0; $m < Pg_NumRows($vysledek); $m++):
228
	    $zaznam = Pg_Fetch_Array($vysledek, $m);
229
//	    echo $zaznam["bookandchapter"]." ".$zaznam["paragraph"]." ".$zaznam["transliteration"]."<BR>\n";
230
        $radek=$zaznam["transliteration"];
231
		$radek2="";
232
		zpracuj_radek();
233
		echo "<BR>Puvodni radek: <BR>".$radek;
234
		echo "<BR>Opraveny radek: <BR>".$radek2;
235
		echo "<HR><HR>";
236
	endfor;
237
238
  echo "\n<BR>Text obsahuje ".$pocet_hesel." hesel. <BR>";
239
240
?>
241
</body>
242
</html>