Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][OOP] Błąd z prepare
Forum PHP.pl > Forum > Przedszkole
Dominator
  1. Class User
  2. {
  3. public function getUsername($id)
  4. {
  5. try
  6. {
  7. $pdo = new DB("","","","","");
  8. $sqlprep = $pdo->prepare("XX");
  9. $sqlprep->execute();
  10. }
  11. catch(PDOException $e)
  12. {
  13. echo "Error! Code ->".$e->getMessage();
  14. }
  15. }
  16. }
  17.  
  18. $usr = new User();
  19. $usr -> getUsername("65");


Taki jest błąd: Fatal error: Call to undefined method DB::prepare() in
Co zrobiłem źle?

---
Tak wygląda klasa do łączenia się z bazą:
  1. Class DB
  2. {
  3. protected $server;
  4. protected $port ;
  5. protected $user;
  6. protected $password;
  7. protected $database;
  8. protected $db;
  9. public function __construct($server, $port, $username, $password, $database)
  10. {
  11. $this->Set($server, $port, $username, $password, $database);
  12. $this->Connect();
  13. }
  14. protected function Set($server, $port, $username, $password, $database)
  15. {
  16. $this->server = $server;
  17. $this->port = $port;
  18. $this->user = $username;
  19. $this->password = $password;
  20. $this->database = $database;
  21. }
  22. protected function Connect()
  23. {
  24. $pdo = new PDO('mysql:host='.$this->server.';dbname='.$this->database.';port='.$this->port, $this->user, $this->password );
  25. $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
  26. }
  27. }
Tajgeer
Spraw, aby klasa DB dziedziczyła (rozszerzała) od PDO. Bez tego nie będziesz miał dostępnych metod, które są w PDO w swojej klasie.
Dominator
Class DB extends PDO ?
skowron-line
Cytat(Dominator @ 9.05.2013, 14:00:11 ) *
Class DB extends PDO ?

Tak, albo poczytaj o wstrzykiwaniu zależności
ber32
Tu masz przykład Połączenie z bazą danych
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.