1 |
<?php |
2 |
include_once("inc/conn.php"); |
3 |
include_once("inc/search.php"); |
4 |
$fields = array( |
5 |
"naziv" => array("dbname" => "naziv", "caption" => "Naziv ustanove"), |
6 |
"zupanija" => array("dbname" => "zupanija", "caption" => "®upanija"), |
7 |
"opcina" => array("dbname" => "opcina", "caption" => "Opæina"), |
8 |
"posta" => array("dbname" => "posta", "caption" => "Po¹tanski broj"), |
9 |
"mjesto" => array("dbname" => "mjesto", "caption" => "Mjesto"), |
10 |
"adresa" => array("dbname" => "adresa", "caption" => "Adresa"), |
11 |
"telefon" => array("dbname" => "telefon", "caption" => "Telefon"), |
12 |
); |
13 |
list($srch, $qry_1, $qry_2) = Search($fields, array("naziv", "zupanija", "opcina", "posta", "mjesto", "adresa", "telefon"), "naziv"); |
14 |
# Win1250 -> ISO8859-2 |
15 |
if ($qry_1) $qry_1 = strtr($qry_1, "ÐÈÆðèæ", "©ÐÈÆ®¹ðèæ¾"); |
16 |
if ($qry_2) $qry_2 = strtr($qry_2, "ÐÈÆðèæ", "©ÐÈÆ®¹ðèæ¾"); |
17 |
$tpl->assign("index", $index); |
18 |
$tpl->assign("srch", ($qry_1 || $qry_2) ? true : false); |
19 |
$tpl->assign("SEARCH", $srch); |
20 |
$letters = Slova(); |
21 |
if (!$id && ($index || ($qry_1 || $qry_2))) { |
22 |
$prvo_slovo = "UPPER(SUBSTRING(naziv FROM 1 FOR 1))"; |
23 |
$sql = "SELECT ustanova_id, $prvo_slovo AS prvo_slovo, naziv, mjesto FROM ustanove"; |
24 |
$uvjet = array(); |
25 |
if ($index && $index != 1) { |
26 |
if ($index == '@') for ($i = 0; $i < count($letters); $i++) array_push($uvjet, "($prvo_slovo <> '".$letters[$i]."')"); |
27 |
else array_push($uvjet, "($prvo_slovo = '".strtoupper($index)."')"); |
28 |
} |
29 |
if ($qry_1) array_push($uvjet, "($qry_1)"); |
30 |
$uvjet = implode(" AND ", $uvjet); |
31 |
if ($uvjet) $sql .= " WHERE $uvjet"; |
32 |
$sql .= " ORDER BY prvo_slovo, naziv"; |
33 |
$sth = $dbh->prepare($sql); |
34 |
if (!$sth) error("Cannot prepare query: \"$sql\""); |
35 |
if (!$sth->execute()) error("Cannot execute query: \"$sql\""); |
36 |
$slova = array(); |
37 |
$ustanove = array(); |
38 |
unset($staro_slovo); |
39 |
while ($row = $sth->fetchrow_array()) { |
40 |
list($id2, $fl, $naziv, $mjesto) = $row; |
41 |
if (!isset($staro_slovo)) $staro_slovo = $fl; |
42 |
if (!($qry_1 || $qry_2) && $staro_slovo != $fl) { |
43 |
array_push($slova, array("l" => $staro_slovo, "ustanove" => $ustanove)); |
44 |
$staro_slovo = $fl; |
45 |
$ustanove = array(); |
46 |
} |
47 |
array_push($ustanove, array("id" => $id2, "naziv" => MyEscape($naziv), "mjesto" => MyEscape($mjesto))); |
48 |
} |
49 |
$sth->finish(); |
50 |
if (isset($staro_slovo)) array_push($slova, array("l" => $staro_slovo, "ustanove" => $ustanove)); |
51 |
$records = 0; |
52 |
for ($i = 0; $i < count($slova); $i++) $records += count($slova[$i]["ustanove"]); |
53 |
$tpl->assign("records", $records); |
54 |
$tpl->assign("slova", $slova); |
55 |
$tpl->assign("stype", $stype); |
56 |
} |
57 |
if ($id) { |
58 |
$sql = "SELECT naziv, zupanija, posta, adresa, mjesto, telefon, opcina, www, email FROM ustanove WHERE (ustanova_id = $id)"; |
59 |
$sth = $dbh->prepare($sql); |
60 |
if (!$sth) error("Cannot prepare query: \"$sql\""); |
61 |
if (!$sth->execute()) error("Cannot execute query: \"$sql\""); |
62 |
while ($row = $sth->fetchrow_array()) { |
63 |
list($naziv, $zup, $posta, $adr, $mj, $tel, $opc, $www, $email) = $row; |
64 |
$tpl->assign("naziv", MyEscape($naziv)); |
65 |
$tpl->assign("adresa", MyEscape($adr)); |
66 |
$tpl->assign("posta", MyEscape($posta)); |
67 |
$tpl->assign("mjesto", MyEscape($mj)); |
68 |
$tpl->assign("zupanija", MyEscape($zup)); |
69 |
$tpl->assign("telefon", MyEscape($tel)); |
70 |
$tpl->assign("opcina", MyEscape($opc)); |
71 |
$tpl->assign("www", MyEscape($www)); |
72 |
$tpl->assign("email", MyEscape($email)); |
73 |
} |
74 |
$sth->finish(); |
75 |
} |
76 |
$tpl->assign("letters", $letters); |
77 |
$tpl->assign("ID", $id); |
78 |
$dbh->disconnect(); |
79 |
?> |