taka baza została utworzona
  1. <?php
  2.  
  3. define("MYSQL_HOST", "localhost");
  4. define("MYSQL_USER", "archy");
  5. define("MYSQL_PASS", "121234");
  6. define("MYSQL_DBNAME", "ksiazki");
  7.  
  8. class utworz_baze
  9. {
  10. public $pdo;
  11. public function __construct()
  12. {
  13. try
  14. {
  15. $this->pdo = new PDO('mysql:host='.MYSQL_HOST.'; dbname='.MYSQL_DBNAME, MYSQL_USER, MYSQL_PASS);
  16. $this->pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  17. $this->pdo->exec("SET NAMES utf8");
  18. }
  19. catch (PDOException $e)
  20. {
  21. echo 'Połączenie nie mogło zostać utworzone :(.<br />';
  22. }
  23. }
  24.  
  25. public function display($zap)
  26. {
  27. $result = $this->pdo->exec($zap);
  28. }
  29.  
  30. }
  31.  
  32. $zap = "CREATE TABLE katalog_ksiazek(
  33. Nr_id int(11) NOT NULL auto_increment,
  34. Tytul varchar(255)NOT NULL,
  35. Gatunek tinyint(2) NOT NULL default 0,
  36. Rok_wydania int(4) NOT NULL default 0,
  37. Autor int(11) NOT NULL default 0,
  38. PRIMARY KEY (Nr_id),
  39. KEY Gatunek(Gatunek,Rok_wydania))";
  40.  
  41.  
  42. $z = new utworz_baze;
  43. $z ->display($zap);
  44.  
  45. $zap = "CREATE TABLE Rodzaj(
  46. Rodzaj_id int(11) NOT NULL auto_increment,
  47. Rodzaj_r varchar(100) NOT NULL,
  48. PRIMARY KEY (Rodzaj_id))";
  49.  
  50. $z1 = new utworz_baze;
  51. $z1 -> display($zap);
  52.  
  53. $zap = "CREATE TABLE Autor(
  54. Autor_id int(11) NOT NULL auto_increment,
  55. Aut_fullname varchar(255) NOT NULL,
  56. PRIMARY KEY(Autor_id))";
  57.  
  58. $z2 = new utworz_baze;
  59. $z2 -> display($zap);
  60.  
  61.  
  62. ?>


kod uzupełniania bazy
  1. <?php
  2. define("MYSQL_HOST", "localhost");
  3. define("MYSQL_USER", "archy");
  4. define("MYSQL_PASS", "121234");
  5. define("MYSQL_DBNAME", "ksiazki");
  6.  
  7. class wypelnij_baze
  8. {
  9. public $pdo;
  10. public function __construct()
  11. {
  12. try
  13. {
  14. $this->pdo = new PDO('mysql:host='.MYSQL_HOST.'; dbname='.MYSQL_DBNAME, MYSQL_USER, MYSQL_PASS);
  15. $this->pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  16. }
  17. catch (PDOException $e)
  18. {
  19. echo 'Połączenie nie mogło zostać utworzone :(.<br />';
  20. }
  21. }
  22.  
  23. public function dodaj()
  24. {
  25.  
  26. $result = $this->pdo->exec("INSERT INTO 'katalog_ksiazek'('Nr_id', 'Tytul', 'Gatunek',
  27. 'Rok_wydania','Autor')
  28. VALUES (1,'Powrót z gwiazd',1,2003,1),
  29. (2,'Bezsenność',2,1999,3),
  30. (3,'Ja Inkwizytor',2,1991,4),
  31. (4,'Polowanie na czerwony Pażdziernik',4,1999,2)");
  32.  
  33. $result1 = $this->pdo->exec("INSERT INTO 'Rodzaj' ('Rodzaj_id','Rodzaj_r')
  34. VALUES (1,'Science fiction'),
  35. (2,'Dramat'),
  36. (3,'Fantasy'),
  37. (4,'Wojenny'),");
  38.  
  39. $result2 = $this->pdo->exec ("INSERT INTO 'Autor' ('Autor_id','Autor_fullname')
  40. VALUES (1,'Stanisław Lem'),
  41. (2,'Tom Clancy',),
  42. (3,'Steven King'),
  43. (4,'Jacek Piekara')");
  44. }
  45. }
  46. $dodaj_rekordy = new wypelnij_baze;
  47. $dodaj_rekordy -> dodaj();
  48.  
  49. ?>


Wyświetla błąd:
( ! ) Fatal error: in C:\wamp\www\pr1\index.php on line 32
( ! ) PDOException: in C:\wamp\www\pr1\index.php on line 32
Call Stack
# Time Memory Function Location
1 0.0000 139104 {main}( ) ..\index.php:0
2 0.0156 145976 wypelnij_baze->dodaj( ) ..\index.php:48
3 0.0156 146304 exec ( ) ..\index.php:32