mysql - php how do you retrieve post from database? -
i know question has been asked many times, can't ever make work code, please bear me, i'm pretty new php oop pdo.
my objective
retrieve post title stored in database using php oop pdo
the problem
it returns error:
undefined property: pdostatement::$fetch i looked @ php docs pdostatement
i learned crud this tutorial, can't translate code,
here code:
crud.php
<?php include 'connection.php'; class crud{ private $db; function __construct($pdo) { $this->db = $pdo; } public function create_post($post_title, $post_content) { try{ $query = "insert posts(post_title, post_content) values (:ptitle, :pbody)"; $stmt = $this->db->prepare($query); $stmt->bindparam(':ptitle', $post_title); $stmt->bindparam(':pbody', $post_content); $stmt->execute(); return $stmt; } catch(pdoexception $e) { $e->getmessage(); } } public function setquery($sql) { try{ $query = $this->db->prepare($sql); $query->execute(); return $query; } catch (pdoexception $e) { $e->getmessage(); } } } index.php (where want posts post)
<?php error_reporting(e_all); require_once 'inc/crud.php'; ?> <!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>welcome house</title> </head> <body> <h1>this home page</h1> <?php $crud = new crud($pdo); $sql = "select * posts"; if($result=$crud->setquery($sql) ) { if($count = $result->fetch) { echo '<p>', $count, '</p>'; while($row = $result->fetch_assoc()) { echo $row['post_title'], '<br>'; } } } ?> </body> </html> i'm pretty confused. recommendations , best practices (for php5 , up)?
fetch function, not property
use instead:
if($count = $result->fetch()) ^^
Comments
Post a Comment