· 9 years ago · Nov 08, 2016, 12:20 AM
1<?php
2/**
3 * Created by PhpStorm.
4 * User: gorgi
5 * Date: 07-Nov-16
6 * Time: 22:56
7 */
8//phpinfo();
9/*$host="praktikum.finki.ukim.mk";
10$dbime="praktikum131203";
11$user="131203";
12$pass="Lozinka131203";
13
14try{
15 $connection = new PDO("mysql:host=$host;dbname=$dbime", $user, $pass);
16 $sql='
17 -- -----------------------------------------------------
18-- Table `news`.`news`
19-- -----------------------------------------------------
20DROP TABLE IF EXISTS `news` ;
21
22CREATE TABLE IF NOT EXISTS `news` (
23 `news_id` INT NOT NULL AUTO_INCREMENT,
24 `date` DATETIME NOT NULL,
25 `news_title` VARCHAR(45) NOT NULL,
26 `full_text` TEXT NOT NULL,
27 PRIMARY KEY (`news_id`))
28ENGINE = InnoDB;
29
30
31-- -----------------------------------------------------
32-- Table `news`.`comments`
33-- -----------------------------------------------------
34DROP TABLE IF EXISTS `comments` ;
35
36CREATE TABLE IF NOT EXISTS `comments` (
37 `comment_id` INT NOT NULL AUTO_INCREMENT,
38 `news_id` INT NOT NULL,
39 `author` VARCHAR(45) NOT NULL,
40 `comment` TINYTEXT NOT NULL,
41 `approved` TINYINT(1) NULL DEFAULT 0,
42 PRIMARY KEY (`comment_id`),
43 INDEX `nid_idx` (`news_id` ASC),
44 CONSTRAINT `news_id`
45 FOREIGN KEY (`news_id`)
46 REFERENCES `news` (`news_id`)
47 ON DELETE CASCADE
48 ON UPDATE CASCADE)
49ENGINE = InnoDB;
50
51
52SET SQL_MODE=@OLD_SQL_MODE;
53SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
54SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
55
56 ';
57 $q=$connection->query($sql);
58 $q->setFetchMode(PDO::FETCH_ASSOC);
59
60}
61catch (PDOException $e){
62 die("Cloud not connect to server".$e->getMessage());
63}*/
64
65echo "<table style='border: solid 1px black;'>";
66echo "<tr><th>Id</th><th>Firstname</th><th>Lastname</th></tr>";
67
68class TableRows extends RecursiveIteratorIterator {
69 function __construct($it) {
70 parent::__construct($it, self::LEAVES_ONLY);
71 }
72
73 function current() {
74 return "<td style='width:150px;border:1px solid black;'>" . parent::current(). "</td>";
75 }
76
77 function beginChildren() {
78 echo "<tr>";
79 }
80
81 function endChildren() {
82 echo "</tr>" . "\n";
83 }
84}
85
86$host="localhost";
87
88$root="root";
89$root_password="";
90
91try {
92 $conn = new PDO("mysql:host=$host", $root, $root_password);
93 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
94 $sql = "CREATE DATABASE IF NOT EXISTS TEST"; //kreiranje na databasa TEST dokolku ne postoi
95 $conn->exec($sql);
96 echo "uspesno kreiranje na baza test <br/>";
97
98}
99catch (PDOException $er){
100 echo "neuspeshno kreiranje na baza test <br/> ".$er->getMessage();
101}
102
103
104$conn = null;
105try{
106 //VO KONEKCIJATA SE DODAVA dbname NA PRETHODNO KREIRANATA TABELA
107 $conn=new PDO("mysql:host=$host;dbname=TEST",$root,$root_password);
108 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
109 //KREIRANJE NA TABELA TEST DOKOLKU NE POSTOI
110 $sql="CREATE TABLE IF NOT EXISTS Test2Tabela(
111 id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
112 ime VARCHAR(30) NOT NULL,
113 prezime VARCHAR(30) NOT NULL)";
114 $conn->exec($sql);
115 echo "uspesno kreiranje na Test2Tabela <br/>";
116
117}
118catch (PDOException $e){
119 echo "Neuspesno kreiranje na Test2Tabela <br/> ".$e->getMessage();
120}
121
122$conn = null;
123
124try{
125 //VO KONEKCIJATA SE DODAVA dbname NA PRETHODNO KREIRANATA TABELA
126 $conn=new PDO("mysql:host=$host;dbname=TEST",$root,$root_password);
127 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
128 //DODAVANJE NA ELEMENTI VO TABELATA , NE VNESUVAME PRIMARY KEY BIDEJKI E SETIRAN NA INT I IMA AUTOINCREMMENT
129 //AKO IMA AUTOINCREMENT PRIMARY KEY IMA NEKOJA ZAEBANCIJA DOKOLKU PRAVIME UPDATE VO SPECIFICEN RED :(
130 $sql = "INSERT INTO Test2Tabela (ime, prezime)
131 VALUES ('Filip', 'Gjorgievski')";
132 $conn->exec($sql);
133 echo "Uspesno kreiranje nov zapis<br/>";
134
135}
136catch (PDOException $e){
137 echo "Neuspesno kreiranje na nov zapis <br/> ".$e->getMessage();
138}
139
140$conn = null;
141try{
142 $conn=new PDO("mysql:host=$host;dbname=TEST",$root,$root_password);
143 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
144 $stmt = $conn->prepare("SELECT id, ime, prezime FROM Test2Tabela");
145 $stmt->execute();
146 //GI ZEMA SITE ELEMENTI OD TABELATA
147 $result = $stmt->setFetchMode(PDO::FETCH_ASSOC);
148 //KREIRA TABELA ZA DA NAPRAVI HTML ELEMENT OD TIP TABLE
149 foreach(new TableRows(new RecursiveArrayIterator($stmt->fetchAll())) as $k=>$v) {
150 echo $v;
151 }
152}
153catch (PDOException $e){
154 echo "Neuspesna selekcija from Test2TABLE <br/>" .$e->getMessage();
155}
156$conn=null;
157echo "</table>";
158?>