2012-01-12 20 views
0

データベースからドロップダウンリストを作成するこのPHPコードがあります。しかし、アプリケーションを実行すると、エラーFatal error: Call to a member function fetch() on a non-object in ----\register.php on line 79が発生します。致命的なエラー:非オブジェクト上のメンバ関数fetch()を呼び出す

<select name="country"> 
<?php 
    $country_result = $dataclass->get_Countries(); 
    while ($country_row = $country_result->fetch()){ //line 79 
     echo "<option value='" . $country_row["country_id"] . "'>" . $country_row["country_name"] . "</option>" . "\n"; 
    } 
?> 
</select> 

私はどこにもこのような方法を使用しているし、彼らが働いていたが、それは動作しません。ドロップダウンリストのためにそれを使用した場合。

get_Country()メソッドの内容:

function get_Countries() { 
    $sql = "SELECT * FROM tbl_countries;"; 
    return $this->dbconn->fetch($sql); 
} 

ます$ this-> dbconn->()の内容をフェッチ:

function fetch($sql, $data=array()) { 
    try{ 
     $STH = $this->dbh->prepare($sql); 
     $STH->setFetchMode(PDO::FETCH_ASSOC); 
     $STH->execute($data); 
     return $STH; 
    } catch (PDOException $e){ 
     echo $e->getMessage(); 
    } 
} 

'データ' のパラメータが配列であるので、それができますか?

+0

' get_Countriesを試してみてください。 '$ dataclass'のクラス(とその実装)を何もせずにさらに進めることはできません。 – KingCrunch

+0

get_Countries()が新しいオブジェクトを返さない場合、エラーがあります。たとえば、配列やデータベースリソースではないことを確認してください。 $ country_resultの型とプロパティを調べるには、var_dump()を試してください。 –

+0

コメントにコードを投稿するのではなく、質問を更新してください! – KingCrunch

答えて

1

は() `明らかにオブジェクトを返しません

function get_Countries() { 
    $sql = "SELECT * FROM tbl_countries;"; 
    return $this->dbconn->query($sql); 
} 
関連する問題