エラー:
致命的なエラー: 61 行目の paging.php の非オブジェクトに対するメンバー関数 fetchAll() の呼び出し
コード:
$this->_results = $this->_db->getOrder('users', array('first_name', 'ASC'));
while ($row = $this->_results->fetchAll(PDO::FETCH_ASSOC) ) { //Line 61 Error
getOrder()
関数 (順序でデータを取得するためのもの) :
public function getOrder($table, $order) {
return $this->actionOrder('SELECT *', $table, $order);
}
public function actionOrder($action, $table, $order = array()) {
if (count($order) === 2) {
$operators = array('ACS','DESC');
$field = $order[0];
$operator = $order[1];
if (in_array($operator, $operators)) {
$sql = "{$action} FROM {$table} ORDER BY {$field} {$operator}";
if (!$this->query($sql, array($operator))->error()) {
return $this;
}
}
}
}
私が達成しようとしているのは、データベースに登録されているユーザーのリストを生成/印刷/エコーすることです。
私が試したこと:
foreach
の代わりに使用while
データベースへの接続を確認しています (正常にチェックアウトされています)
使用される変数をクラス レベルのプライベート変数 (
$this->_blahblahblah
) からローカル スコープ変数のみに変更する$blahblahblah
のさまざまな形式を使用して
fetchAll
_results
オブジェクトの値を確認する休憩を取った後、私はこれを試しました:
public function people_display() {
$output = ''; //$this->_results = $this->_db->getOrder('users', array('first_name', 'ASC')); $results = $this->_db->get('users', array('username', '=', $this->_user = User::data()->username)); while ($row = $results->fetchAll(PDO::FETCH_ASSOC) ) { $output .= ' <tr> <td>' . $row['username']. '</td> <td>' . $row['first_name']. '</td> <td>' . $row['last_name']. '</td> </tr>'; //<td>'/* . . */'</td> //<td>'/* . . */'</td> }
エラーが発生しました:
致命的なエラー: 152 行目の user.php のプライベート プロパティ Paging::$_data にアクセスできません
誰か助けてくれませんか?前もって感謝します