Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- class Kviz_db
- {
- private $host = 'localhost';
- private $db_name = 'kviz';
- private $username = 'root';
- private $password = '';
- private $dbh;
- public function __construct() {
- try
- {
- $this->konekcioni_string = "mysql:host=$this->host;dbname=$this->db_name";
- $this->dbh = new PDO($this->konekcioni_string, $this->username, $this->password);
- }
- catch (Exception $ex)
- {
- echo "GRESKA: ".$ex->getMessage();
- }
- }
- public function __destruct() {
- $dbh = null;
- }
- public function prikazi_kvizove()
- {
- try
- {
- $sql = "SELECT * FROM kvizovi";
- $pdo_izraz = $this->dbh->query($sql);
- $niz = $pdo_izraz->fetchAll(PDO::FETCH_ASSOC);
- $div = "<div style='width:280px;height:280px;float:left;border: 1px solid black;'>";
- $div.= "<h3>Kvizovi</h3>";
- $div.= "<hr><br>";
- foreach($niz as $item)
- {
- if(isset($_GET['kviz_id']) && $_GET['kviz_id'] == $item['ID'])
- $div.= "<a href='#' id='".$item['ID']."' onclick='kviz(this.id)'>".$item['naziv']."</a><b> (izabran)</b><br>";
- else
- $div.= "<a href='#' id='".$item['ID']."' onclick='kviz(this.id)'>".$item['naziv']."</a><br>";
- }
- $div.= "<br></div>";
- echo $div;
- } catch (Exception $ex)
- {
- echo "GRESKA: ".$ex->getMessage();
- }
- }
- public function uzmi_kvizove()
- {
- $sql = "SELECT * FROM kvizovi";
- $pdo_izraz = $this->dbh->query($sql);
- $niz = $pdo_izraz->fetchAll(PDO::FETCH_ASSOC);
- return $niz;
- }
- public function prikazi_pitanja_za_kviz($id_kviza)
- {
- try
- {
- $sql = "SELECT * FROM pitanja WHERE ID_kviza=".$id_kviza;
- $pdo_izraz = $this->dbh->query($sql);
- $niz = $pdo_izraz->fetchAll(PDO::FETCH_ASSOC);
- $div = "<div style='width:280px;height:280px;float:left;border: 1px solid black;'>";
- $div.= "<h3>Pitanja za izabrani kviz</h3>";
- $div.= "<input type='button' onclick='dodaj_pitanje(".$_GET['kviz_id'].")' onchange='location.reload();' name='dugme' value='dodaj pitanje'>";
- $div.= "<hr><br>";
- foreach($niz as $item)
- {
- if(isset($_GET['pitanje_id']) && $_GET['pitanje_id'] == $item['ID'])
- $div.= "<input type='button' id='".$item['ID']."' onclick='obrisi(this.id)' name='izbrisi' value='X' style='color:red;'> <a href='#' id='".$item['ID']."' onclick='pitanje(this.id)'>".$item['tekst']."</a><b> (izabran)</b><br>";
- else
- $div.= "<input type='button' id='".$item['ID']."' onclick='obrisi(this.id)' name='izbrisi' value='X' style='color:red;'> <a href='#' id='".$item['ID']."' onclick='pitanje(this.id)'>".$item['tekst']."</a><br>";
- }
- $div.= "<br></div>";
- echo $div;
- } catch (Exception $ex)
- {
- echo "GRESKA: ".$ex->getMessage();
- }
- }
- public function prikazi_odgovore_za_pitanje($id_pitanja)
- {
- try
- {
- $sql = "SELECT * FROM odgovori WHERE ID_pitanja=".$id_pitanja;
- $pdo_izraz = $this->dbh->query($sql);
- $niz = $pdo_izraz->fetchAll(PDO::FETCH_ASSOC);
- $div = "<div style='width:280px;height:280px;float:left;border: 1px solid black;'>";
- $div.= "<h3>Odgovori za izabrano pitanje</h3>";
- $div.= "<hr><br>";
- foreach($niz as $item)
- {
- //Ja sam napravio da se ponasa bas kao u kvizu, na klik da prikazuje da li je odgovor tacan ili nije, pa sam sada to ispravio.
- /*if(isset($_GET['odgovor_id']) && $_GET['odgovor_id'] == $item['ID'])
- {*/
- if($item['tacan_odgovor'] == 0)
- $tacan = "<b>netacno</b>";
- else
- $tacan = "<b>tacno</b>";
- /*
- $div.= "<a href='#' style='text-decoration:none;color:black;' id='".$item['ID']."' onclick='odgovor(this.id)'>".$item['tekst']."</a> $tacan<br>";
- }
- else */
- {
- $div.= "<a href='#' style='text-decoration:none;color:black;' id='".$item['ID']."' onclick='odgovor(this.id)'>".$item['tekst']." ($tacan)</a><br>";
- }
- }
- $div.= "<br></div>";
- echo $div;
- } catch (Exception $ex)
- {
- echo "GRESKA: ".$ex->getMessage();
- }
- }
- public function obrisi_pitanje($id_pitanja)
- {
- try
- {
- $sql = "DELETE FROM odgovori WHERE ID_pitanja=".$id_pitanja;
- $sql2 = "DELETE FROM pitanja WHERE ID=".$id_pitanja;
- $this->dbh->beginTransaction();
- $sth = $this->dbh->exec($sql);
- $sth = $this->dbh->exec($sql2);
- $this->dbh->commit();
- } catch (Exception $ex)
- {
- $this->dbh->rollBack();
- echo "GRESKA: ".$ex->getMessage();
- }
- }
- public function dodaj_pitanje($id_kviza, $tekst_pitanja, $broj_odgovora, $ogovori, $resenja) //odgovori i resenja su nizovi
- {
- try
- {
- $this->dbh->beginTransaction();
- $sql = "INSERT INTO pitanja (ID_kviza, tekst) VALUES ($id_kviza, '$tekst_pitanja')";
- $this->dbh->exec($sql);
- $sql = "SELECT * FROM pitanja WHERE ID_kviza=$id_kviza AND tekst='$tekst_pitanja'";
- $dbo_izraz = $this->dbh->query($sql);
- $niz = $dbo_izraz->fetch(PDO::FETCH_ASSOC);
- $id_pitanja=$niz['ID'];
- for($i = 0; $i < $broj_odgovora; $i++)
- {
- $tacan=0;
- if(in_array($i, $resenja)) $tacan = 1;
- $sql = "INSERT INTO odgovori (ID_pitanja, tekst, tacan_odgovor) VALUES ($id_pitanja, '".$ogovori[$i]."' , ".$tacan.")";
- $this->dbh->exec($sql);
- }
- $this->dbh->commit();
- echo "Dodavanje je uspesno!";
- } catch (Exception $ex)
- {
- $this->dbh->rollBack();
- echo "GRESKA: ".$ex->getMessage();
- }
- }
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement