· 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
10echo "<table style='border: solid 1px black;'>";
11echo "<tr><th>Id</th><th>Firstname</th><th>Lastname</th></tr>";
12
13class TableRows extends RecursiveIteratorIterator {
14 function __construct($it) {
15 parent::__construct($it, self::LEAVES_ONLY);
16 }
17
18 function current() {
19 return "<td style='width:150px;border:1px solid black;'>" . parent::current(). "</td>";
20 }
21
22 function beginChildren() {
23 echo "<tr>";
24 }
25
26 function endChildren() {
27 echo "</tr>" . "\n";
28 }
29}
30
31$host="localhost";
32
33$root="root";
34$root_password="";
35
36try {
37 $conn = new PDO("mysql:host=$host", $root, $root_password);
38 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
39 $sql = "CREATE DATABASE IF NOT EXISTS TEST"; //kreiranje na databasa TEST dokolku ne postoi
40 $conn->exec($sql);
41 echo "uspesno kreiranje na baza test <br/>";
42
43}
44catch (PDOException $er){
45 echo "neuspeshno kreiranje na baza test <br/> ".$er->getMessage();
46}
47
48
49$conn = null;
50try{
51 //VO KONEKCIJATA SE DODAVA dbname NA PRETHODNO KREIRANATA TABELA
52 $conn=new PDO("mysql:host=$host;dbname=TEST",$root,$root_password);
53 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
54 //KREIRANJE NA TABELA TEST DOKOLKU NE POSTOI
55 $sql="CREATE TABLE IF NOT EXISTS Test2Tabela(
56 id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
57 ime VARCHAR(30) NOT NULL,
58 prezime VARCHAR(30) NOT NULL)";
59 $conn->exec($sql);
60 echo "uspesno kreiranje na Test2Tabela <br/>";
61
62}
63catch (PDOException $e){
64 echo "Neuspesno kreiranje na Test2Tabela <br/> ".$e->getMessage();
65}
66
67$conn = null;
68
69try{
70 //VO KONEKCIJATA SE DODAVA dbname NA PRETHODNO KREIRANATA TABELA
71 $conn=new PDO("mysql:host=$host;dbname=TEST",$root,$root_password);
72 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
73 //DODAVANJE NA ELEMENTI VO TABELATA , NE VNESUVAME PRIMARY KEY BIDEJKI E SETIRAN NA INT I IMA AUTOINCREMMENT
74 //AKO IMA AUTOINCREMENT PRIMARY KEY IMA NEKOJA ZAEBANCIJA DOKOLKU PRAVIME UPDATE VO SPECIFICEN RED :(
75 $sql = "INSERT INTO Test2Tabela (ime, prezime)
76 VALUES ('Filip', 'Gjorgievski')";
77 $conn->exec($sql);
78 echo "Uspesno kreiranje nov zapis<br/>";
79
80}
81catch (PDOException $e){
82 echo "Neuspesno kreiranje na nov zapis <br/> ".$e->getMessage();
83}
84
85$conn = null;
86try{
87 $conn=new PDO("mysql:host=$host;dbname=TEST",$root,$root_password);
88 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
89 $stmt = $conn->prepare("SELECT id, ime, prezime FROM Test2Tabela");
90 $stmt->execute();
91 //GI ZEMA SITE ELEMENTI OD TABELATA
92 $result = $stmt->setFetchMode(PDO::FETCH_ASSOC);
93 //KREIRA TABELA ZA DA NAPRAVI HTML ELEMENT OD TIP TABLE
94 foreach(new TableRows(new RecursiveArrayIterator($stmt->fetchAll())) as $k=>$v) {
95 echo $v;
96 }
97}
98catch (PDOException $e){
99 echo "Neuspesna selekcija from Test2TABLE <br/>" .$e->getMessage();
100}
101$conn=null;
102echo "</table>";
103?>