Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: PDO i inne klasy
Forum PHP.pl > Forum > PHP > Object-oriented programming
tabbi
Witam,

niestety po wielu próbach nie potrafie jakoś tego zrobić. Mam klase Mysql którą tworzę podczas ładowania strony. Dodatkowo tworze klase Pliki do której chciałbym przekazać odnośnik do klasy Mysql. Próbowałem tak:

  1. $db = new Mysql();
  2. $pliki = new Pliki($db);


w klasie Pliki mam w konstruktorze przypisanie:

  1. function __construct($dbh,$ID){
  2.  
  3. $this->db=$dbh;
  4. }/php]
  5.  
  6. Potem wew. klasy chce wykonywac polecenia:
  7.  
  8. [php]$result=$this->db->prepare("
  9. SELECT
  10. sname, pass
  11. FROM
  12. demo_servers
  13. WHERE
  14. selected = 1
  15. ORDER BY traffic_left
  16. DESC LIMIT 1
  17. ");


Wywala mi blad Call to undefined method Mysql::prepare().

Drugie pytanie jak przekazać tak samo odnośnik do Mysql, jeśli w klasie Pliki mam doczepiona inna klase Serwisy, a chce tak samo wykonywać polecenia do bazy w tej klasie ?:

  1. //doczepienie klasy class_serwisy.php
  2. $this->serwer=Serwisy::getInstance();
kulczycki
$db = new Mysql(); to nie jest PDO
Crozin
Cytat
Call to undefined method Mysql::prepare().
I czego niby w tym komunikacje nie rozumiesz?
Cytat
Drugie pytanie jak przekazać tak samo odnośnik do Mysql, jeśli w klasie Pliki mam doczepiona inna klase Serwisy, a chce tak samo wykonywać polecenia do bazy w tej klasie ?:
1. Co niby jest takiego w klasie Serwisy, że potrzebujesz implementować w niej Singleton?
2. Ogólnie do całego wątku: http://en.wikipedia.org/wiki/Dependency_injection
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.