12345678910111213141516171819202122232425262728293031 |
- <?php
- class BlogPostRepository extends BaseRepository implements IBlogPostRepository {
- public function __construct() {
- parent::__construct();
- }
-
- public function GetCount() {
- return self::$PDO->query("SELECT COUNT(*) FROM blog_posts WHERE post_content<>'' AND post_deleted=0")->fetchColumn();
- }
-
- public function GetLatest($count=1,$offset=0){
- $prep=self::$PDO->prepare("SELECT post_id FROM blog_posts WHERE post_content<>'' AND post_deleted=0 ORDER BY post_timestamp DESC LIMIT ?,?");
- $prep->bindValue(1,(int)$offset,PDO::PARAM_INT); // can't just use array in execute this time as execute array is treated like strings
- $prep->bindValue(2,(int)$count,PDO::PARAM_INT);
- $prep->execute();
- $ids=$prep->fetchAll(PDO::FETCH_COLUMN);
- $posts=array();
- foreach ($ids as $id)
- $posts[]=new BlogPost($id);
- return $posts;
- }
-
- public function GetAll(){
- $posts=array();
- self::SetupPDO();
- $ids=self::$PDO->query("SELECT post_id FROM blog_posts WHERE post_deleted=0")->fetchAll(PDO::FETCH_COLUMN);
- foreach ($ids as $id)
- $posts[]=new BlogPost($id);
- return $posts;
- }
- }
|