Advertisement
Guest User

Untitled

a guest
Mar 22nd, 2018
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.14 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  5. <title>Hello</title>
  6. </head>
  7. <body>
  8. <?php
  9. class Database{
  10.  
  11. // specify your own database credentials
  12. private $host = "localhost";
  13. private $db_name = "db_pwebpp";
  14. private $username = "root";
  15. private $password = "";
  16. public $conn;
  17.  
  18. // get the database connection
  19. public function getConnection(){
  20.  
  21. $this->conn = null;
  22.  
  23. try{
  24. $this->conn = new PDO("mysql:host=" . $this->host . ";dbname=" . $this->db_name, $this->username, $this->password);
  25. }catch(PDOException $exception){
  26. echo "Connection error: " . $exception->getMessage();
  27. }
  28.  
  29. return $this->conn;
  30. }
  31. public function createTable()
  32. {
  33. if ( $this->conn = null)
  34. {
  35. try{
  36. $this->conn = new PDO("mysql:host=" . $this->host . ";dbname=" . $this->db_name, $this->username, $this->password);
  37. }catch(PDOException $exception){
  38. echo "Connection error: " . $exception->getMessage();
  39. }
  40. }
  41. $sql = "CREATE TABLE books(
  42. isbn INT(10) NOT NULL,
  43. name VARCHAR(32) DEFAULT NULL,
  44. published (10) DEFAULT NULL,
  45. genre VARCHAR(32) DEFAULT NULL,
  46. author VARCHAR(32) DEFAULT NULL,
  47. PRIMARY KEY (isbn)
  48. ) ENGINE=INNODB DEFAULT CHARSET=utf8";
  49. $stmt = $this->conn->prepare($sql);
  50. if($stmt->execute()){
  51. echo "books table created successfully";
  52. }else{
  53. die('Could not create table: ' . mysql_error());
  54. }
  55. }
  56. }
  57. class BookControler{
  58. private $conn;
  59. private $tableName = "books";
  60. public function __construct($db){
  61. $this->conn = $db;
  62. }
  63. public function create($pIsbn, $pName, $pPublished, $pGenre, $pAuthor)
  64. {
  65. $query = "INSERT INTO
  66. " . $this->table_name . "
  67. SET
  68. isbn=:isbn, name=:name, published=:published, genre=:genre, author=:author";
  69.  
  70. $stmt = $this->conn->prepare($query);
  71. $stmt->bindParam(":isbn", $pIsbn);
  72. $stmt->bindParam(":name", $pName);
  73. $stmt->bindParam(":published", $pPublished);
  74. $stmt->bindParam(":genre", $pGenre);
  75. $stmt->bindParam(":author", $pAuthor);
  76. if($stmt->execute()){
  77. return true;
  78. }else{
  79. return false;
  80. }
  81. }
  82. public function getBooksByGenre()
  83. {
  84. $Genre = $_GET['searchGenre'];
  85. $query = "SELECT
  86. *
  87. FROM
  88. " . $this->table_name . "
  89. WHERE
  90. genre = ?".$Genre;
  91.  
  92. $stmt = $this->conn->prepare( $query );
  93. $stmt->execute();
  94.  
  95. return $stmt;
  96. }
  97. public function update($pIsbn, $pNewName){
  98.  
  99. $query = "UPDATE
  100. " . $this->table_name . "
  101. SET
  102. name = :name
  103. WHERE
  104. isbn = :isbn";
  105.  
  106. $stmt = $this->conn->prepare($query);
  107. $stmt->bindParam(':name', $pNewName);
  108. $stmt->bindParam(':isbn', $pIsbn);
  109. if($stmt->execute()){
  110. return true;
  111. }
  112. return false;
  113. }
  114.  
  115. public function getBooksOrdered()
  116. {
  117. $query = "SELECT
  118. *
  119. FROM
  120. " . $this->table_name . "
  121. ORDER BY
  122. author ASC";
  123.  
  124. $stmt = $this->conn->prepare( $query );
  125. $stmt->execute();
  126.  
  127. return $stmt;
  128. }
  129.  
  130. }
  131.  
  132. $database = new Database();
  133. $database->createTable();
  134. ?>
  135.  
  136. <table>
  137. <tr>
  138. <td>ISBN</td>
  139. <td><input type='text' name='isbn' /></td>
  140. </tr>
  141.  
  142. <tr>
  143. <td>Name</td>
  144. <td><input type='text' name='name' /></td>
  145. </tr>
  146.  
  147. <tr>
  148. <td>Published</td>
  149. <td><input name='published'></input></td>
  150. </tr>
  151.  
  152. <tr>
  153. <td>Genre</td>
  154. <td><input name='genre'></input></td>
  155. </tr>
  156.  
  157. <tr>
  158. <td>Author</td>
  159. <td><input name='author'></input></td>
  160. </tr>
  161.  
  162. <tr>
  163. <td></td>
  164. <td><button type="submit">Create</button></td>
  165. </tr>
  166. <tr>
  167. <td> get by genre</td>
  168. </tr>
  169. <tr>
  170. <td><input type='text' name='searchGenre' /></td>
  171. <td><a href='getBooksByGenre' > GO </a></td>
  172. </tr>
  173. <tr>
  174. <td><input type='text' name='updateBook' /></td>
  175. <td><a href='updateBooks' > update </a></td>
  176. </tr>
  177.  
  178. tr>
  179. <td></td>
  180. <td><a href='getAllbooks' > Get all sorted </a></td>
  181. </tr>
  182.  
  183. </table>
  184.  
  185. </body>
  186. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement