Advertisement
Guest User

Untitled

a guest
Jul 6th, 2016
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.33 KB | None | 0 0
  1. <?php
  2.  
  3. /*
  4.     Parametri za povezivanje sa bazom podataka
  5.     korisnicko ime: root;
  6.     sifra: prazna niska
  7.     host: localhost
  8.     dbname: sentiments
  9. */
  10. interface ConnectionData{
  11.     const username='root';
  12.     const password='';
  13.     const host='localhost';
  14.     const dbname='sentiments';
  15. }
  16.  
  17. class PDO_DB implements ConnectionData{
  18.     static private $db=NULL;
  19.  
  20.     private $connection;
  21.  
  22.     private function __construct(){
  23.     }
  24.  
  25.     private function __clone(){
  26.     }
  27.  
  28.     private function __wakeup(){
  29.     }
  30.  
  31.     public static function getInstance(){
  32.         if(self::$db==NULL){
  33.             self::$db=new PDO_DB();
  34.             self::$db->connection=new PDO('mysql:'.ConnectionData::host.';dbname='.ConnectionData::dbname,
  35.                                 ConnectionData::username, ConnectionData::password,
  36.                                  array(PDO::ATTR_ERRMODE=>PDO::ERRMODE_EXCEPTION));
  37.         }
  38.  
  39.         return self::$db;
  40.     }
  41.  
  42.  
  43.     /*
  44.         Implementirati metodu koja dohvata sve reci iz leksikona
  45.     */
  46.     public function getAllWords(){
  47.         $query = "select word, score from sentiments.lexicon";
  48.         $stmt=self::$db->connection->prepare($query);
  49.         $stmt->execute();
  50.  
  51.         return $stmt->fetch(PDO::FETCH_OBJ);
  52.     }
  53.  
  54.  
  55.     /*
  56.         Metoda koja dohvata samo jednu rec iz leksikona
  57.         vraca objekat koji sadrzi rec i njen skor ili false ako se trazena rec ne nalazi u leksikonu
  58.      */
  59.     public function getWord($word){
  60.         $query="select word, score from sentiments.lexicon where word=:word";
  61.         $stmt=self::$db->connection->prepare($query);
  62.         $stmt->bindParam(":word", $word, PDO::PARAM_STR);
  63.  
  64.         $stmt->execute();
  65.  
  66.         return $stmt->fetch(PDO::FETCH_OBJ);
  67.     }
  68.  
  69.  
  70.     /*
  71.         Implementirati metodu koja upisuje zadatu rec i njenu sentiment ocenu u leksikon
  72.     */
  73.     public function insertWord($word, $score){
  74.         $query="insert into sentiments.lexicon (:word, :score)";
  75.         $stmt = self::$db->connection->prepare($query);
  76.         $stmt->bindParam(":word", $word, PDO::PARAM_STR);
  77.         $stmt->bindParam(":score", strval($score), PDO::PARAM_STR);
  78.         return $stmt->execute();
  79.     }
  80.  
  81.     /*
  82.         Implementirati metodu koja upisuje dokument opisan naslovom, sadrzajem i sentiment ocenom
  83.         u bazu
  84.     */
  85.     public function insertDocument($title, $content, $sentiment){
  86.         $query="insert into sentiments.documents (:title, :content, :sentiment)";
  87.         $stmt = self::$db->connection->prepare($query);
  88.         $stmt->bindParam(":title", $title, PDO::PARAM_STR);
  89.         $stmt->bindParam(":content", $content, PDO::PARAM_STR);
  90.         $stmt->bindParam(":sentiment", strval($sentiment), PDO::PARAM_STR);
  91.         return $stmt->execute();
  92.     }
  93. }
  94.  
  95. /*
  96.  
  97. try{
  98.     $pdo=PDO_DB::getInstance();
  99.  
  100.  
  101. //    //allWords test
  102. //    $allWords=$pdo->getAllWords();
  103. //    var_dump($allWords);
  104.  
  105. //    //getWord test
  106. //    $word="super nice";
  107. //    $wordInfo=$pdo->getWord($word);
  108. //    var_dump($wordInfo);
  109.  
  110. //    //insertWord test
  111. //    $insertWordFlag=$pdo->insertWord("super word", 1);
  112. //    var_dump($insertWordFlag);
  113.  
  114. //    //insertDocument test
  115. //    $insertDocumentFlag=$pdo->insertDocument("Test title", "Test content", 0.5);
  116. //    var_dump($insertDocumentFlag);
  117.  
  118. }catch(PDOException $e){
  119.     echo $e->getMessage();
  120.     unset($pdo);
  121. }
  122. */
  123.  
  124. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement