![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 19.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
Zaczynam swoją przygodę z OOP i natknąłem się na problem podczas pobierania danych z bazy danych:
Kod <?php class admin { private $host = 'mysql:host=localhost;dbname=db501865'; private $username = 'root'; private $password = 'root'; private $conn; public function connect() { try { $conn = new PDO($this->host, $this->username, $this->password); $conn->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION ); } catch ( PDOException $e ) { die( 'Connection failed: ' . $e->getMessage() ); } return $conn; } public function disconnect( $conn ) { $conn = ''; } public function listReal() { $this ->connect(); $real = $conn->query('SELECT * FROM `real`'); echo '<ul>'; foreach ($real as $row) { echo'<li><img src="'.$row['image'].'"></li>'; } $real -> closeCursor(); echo'</ul>'; } } ?> Przy próbie wykonania kodu Kod <?php $db = new admin; $db ->listReal(); ?> mam błąd internal server error. Popełniłem pewnie jakiś bardzo podstawowy błąd, ale sam do tego nie mogę dojść więc liczę na waszą pomoc:) Ten post edytował drax 26.07.2012, 20:28:52 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 707 Pomógł: 290 Dołączył: 16.12.2008 Skąd: Śląsk Ostrzeżenie: (0%) ![]() ![]() |
Używaj odpowiednich tagów.
Klasa jest zupełnie niepoprawna. Co ma obiekt admina do bazy danych? A sam błąd raczej nie ma nic wspólnego z bazą danych, dotyczy raczej ustawień serwera, htaccess, chmody itp. Ten post edytował markonix 26.07.2012, 20:55:28 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 592 Pomógł: 62 Dołączył: 3.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
nie odwołujesz się do składowych klsay poprzez $this.
daj na początku (zaraz za <?php) error_reporting(E_ALL); ale 500-kę wywala raczej z innego powodu ... |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 19.06.2010 Ostrzeżenie: (0%) ![]() ![]() |
Już poprawiłem kod i zadziałało:)
Cała klasa ma być klasą do obsługi panelu administratora. Nie wiem czy dobrze to zaczynam, ale tak sobie to wyobraziłem i tak to robię. Nie wiem czy dobrze tak jest? Wszystko uruchamiam na serwerze z mojego komputera. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 592 Pomógł: 62 Dołączył: 3.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
nie wiem czy myslałeś nad nazewnictwem, zastosowaniem jakiegoś wzorca czy po prostu rozrysowałeś sobie diagram klas,
ale po krótce: - ta klasa, którą masz, powinna się nazywać coś a'la db - metoda listReal powinna należeć do innej klasy - klasa Admin niczego nie mówi, spodziewałbym się po niej dziedziczenia po jakimś User z rozszerzeniem pól charakterystycznych dla admina (IMG:style_emoticons/default/wink.gif) Ten post edytował rzymek01 26.07.2012, 21:48:59 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 16.09.2025 - 16:18 |