Błąd OOP

2012-01-11 13:00:31 Post #1 gość_goscik

 
Advert_model.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php

include_once 'advert.php';
include_once 
'config/db.php';

class 
Advert_model extends Advert {

    public function 
getAdverts() {


        
$stmt $pdo->exec("SELECT * FROM advertt");



        if (
$stmt->rowCount() > 1) {
            return 
$stmt->fetchAll(PDO::FETCH_ASSOC);
        }
    }

}

?>


plik.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 
<?php

include_once 'advert.php';
include_once 
'config/db.php';

class 
Advert_model extends Advert {

    public function 
getAdverts() {


        
$stmt $pdo->exec("SELECT * FROM advertt");



        if (
$stmt->rowCount() > 1) {
            return 
$stmt->fetchAll(PDO::FETCH_ASSOC);
        }
    }

}

?>



Błąd to: Fatal error: Call to a member function exec() on a non-object in C:\xampp\htdocs\advert\Advert_model.php on line 11

W klasie Advert są same gettery i settery.
Dlaczego po wykonaniu plik.php pojawia się taki błąd?

2012-01-11 13:01:57 Post #2 gość_goscik

 
plik.php to:
1
2
3
4
5
6
7
8
9
10
11
12
 <?php 
include_once 'Advert_model.php';
include_once 
'advert.php';
 
$a = new Advert_model;
 
$a->getAdverts();
 
 foreach(
$a as $row){
     echo 
$row['name'];
 }

?>

2012-01-11 13:36:57 Post #3 nospor

 
Używasz ni stąd ni zowąd zmiennej $pdo to nic dziwnego że ci nie działa.
Jeśli $pdo tworzysz gdzieś indziej to poczytaj o zasięgu zmiennych
http://pl.php.net/manual/pl/language.variables.scope.php

Odpowiedz