/[health_html]/inc/pgKnjiznica-lijekovi.php
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Annotation of /inc/pgKnjiznica-lijekovi.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.5 - (hide annotations)
Fri Sep 28 23:34:37 2001 UTC (22 years, 7 months ago) by ravilov
Branch: MAIN
Changes since 1.4: +5 -4 lines
Added some new pages to PLIVAmed. Some bugfixes.

1 ravilov 1.1 <?php
2 ravilov 1.4 include("inc/conn.php");
3 ravilov 1.1 include_once("inc/search.php");
4     $fields = array(
5     "atk" => array("dbname" => "lijekovi.sif_atk || lijekovi.sif_atk_ostalo", "caption" => "ATK"),
6 ravilov 1.5 "inn" => array("dbname" => "generici.naziv", "caption" => "Generièko ime"),
7 ravilov 1.1 "proizvodjac" => array("dbname" => "proizvodjaci.naziv", "caption" => "Proizvoðaè"),
8     "name" => array("dbname" => "lijekovi.naziv", "caption" => "Naziv"),
9 ravilov 1.5 "hzzo" => array("dbname" => "lijekovi.nacin_izdavanja", "caption" => "Participacija")
10 ravilov 1.1 );
11 ravilov 1.5 list($srch, $qry_1, $qry_2) = Search($fields, array("inn", "proizvodjac", "name"), array("atk", "hzzo"),
12     $isMed ? "inn" : "name");
13 ravilov 1.1 # Win1250 -> ISO8859-2
14     if ($qry_1) $qry_1 = strtr($qry_1, "ŠÐÈƎšðèæž", "©ÐÈÆ®¹ðèæ¾");
15     if ($qry_2) $qry_2 = strtr($qry_2, "ŠÐÈƎšðèæž", "©ÐÈÆ®¹ðèæ¾");
16     $tpl->assign("index", $index);
17     $tpl->assign("srch", ($qry_1 || $qry_2) ? true : false);
18     $tpl->assign("SEARCH", $srch);
19 ravilov 1.4 $recepti = array();
20     $sql = "SELECT oznaka, opis FROM recept";
21     $sth = $dbh->prepare($sql);
22     if (!$sth) error("Cannot prepare query: \"$sql\"");
23     if (!$sth->execute()) error("Cannot execute query: \"$sql\"");
24     while ($row = $sth->fetchrow_array()) $recepti[$row[0]] = MyEscape($row[1]);
25     $sth->finish();
26 ravilov 1.1 $letters = Slova();
27     if ($index || ($qry_1 || $qry_2)) {
28     $prvo_slovo = "UPPER(SUBSTRING(lijekovi.naziv FROM 1 FOR 1))";
29     $sql = "SELECT DISTINCT lijekovi.sif_inn, $prvo_slovo AS prvo_slovo, lijekovi.naziv, proizvodjaci.naziv, generici.naziv, lijekovi.sif_atk, atc.opis FROM lijekovi, generici, proizvodjaci, atc WHERE (lijekovi.sif_proizvodjac = proizvodjaci.proiz_id) AND (lijekovi.sif_inn = generici.generik_id) AND (lijekovi.sif_atk = atc.atc_id)";
30     if ($index && $index != 1) {
31     if ($index == '@') for ($i = 0; $i < count($letters); $i++) $sql .= " AND ($prvo_slovo <> '".$letters[$i]."')";
32 ravilov 1.2 else $sql .= " AND ($prvo_slovo = '".MyUpper($index)."')";
33 ravilov 1.1 }
34     if ($qry_1) $sql .= " AND ($qry_1)";
35     $sql .= " ORDER BY prvo_slovo, lijekovi.naziv";
36     $sth = $dbh->prepare($sql);
37     if (!$sth) error("Cannot prepare query: \"$sql\"");
38     if (!$sth->execute()) error("Cannot execute query: \"$sql\"");
39     $slova = array();
40     $lijekovi = array();
41     unset($staro_slovo);
42     while ($row = $sth->fetchrow_array()) {
43     list($inn, $fl, $naziv, $proizv, $generik, $atk, $grupa) = $row;
44 ravilov 1.2 $proizv = MyUpper($proizv);
45 ravilov 1.1 if (!isset($staro_slovo)) $staro_slovo = $fl;
46     if (!($qry_1 || $qry_2) && $staro_slovo != $fl) {
47     array_push($slova, array("l" => $staro_slovo, "lijekovi" => $lijekovi));
48     $staro_slovo = $fl;
49     $lijekovi = array();
50     }
51     $sql = "SELECT nacin_izdavanja, pakovanje, lijekovi.sif_atk, lijekovi.sif_atk_ostalo, cijena_orig FROM lijekovi WHERE (lijekovi.sif_inn = $inn) AND (lijekovi.sif_atk = '$atk') AND (lijekovi.naziv = '$naziv')";
52     if ($qry_2) $sql .= " AND ($qry_2)";
53     $sql .= " ORDER BY pakovanje";
54     $sth2 = $dbh->prepare($sql);
55     if (!$sth2) error("Cannot prepare query: \"$sql\"");
56     if (!$sth2->execute()) error("Cannot execute query: \"$sql\"");
57     $oblici = array();
58     while ($row2 = $sth2->fetchrow_array()) {
59     list($recept, $pakovanje, $atc, $atc2, $cijena) = $row2;
60     array_push($oblici, array(
61     "hzzo" => $recept,
62 ravilov 1.4 "hzzo2" => $recepti[$recept],
63 ravilov 1.1 "pakovanje" => MyEscape($pakovanje),
64     "atk" => $atc.$atc2,
65     "cijena" => $cijena
66     ));
67     }
68     $sth2->finish();
69     if (count($oblici) <= 0) continue;
70     array_push($lijekovi, array(
71     "naziv" => MyEscape($naziv),
72     "proizvodjac" => MyEscape($proizv),
73     "inn" => MyEscape($generik),
74     "tip" => $grupa,
75     "oblici" => $oblici,
76     "notes" => ""
77     ));
78     }
79     $sth->finish();
80 ravilov 1.5 if (count($lijekovi) > 0) array_push($slova, array("l" => $staro_slovo, "lijekovi" => $lijekovi));
81 ravilov 1.1 $records = 0;
82     for ($i = 0; $i < count($slova); $i++) $records += count($slova[$i]["lijekovi"]);
83     $tpl->assign("records", $records);
84     $tpl->assign("slova", $slova);
85     }
86     $tpl->assign("letters", $letters);
87     $tpl->assign("stype", $stype);
88     $dbh->disconnect();
89     ?>

  ViewVC Help
Powered by ViewVC 1.1.26