smile
smile

Reputation: 117

getting information from database

i'm watching a tutorials about CMS with OOP - PHP & RainTPL

on control page : (articles.php)

<?php
require_once('globals.php');
require_once(CONTROLLERS.'ArticlesController.php');

$articlesmodel = new ArticlesModel() ; 

$catsmodel     = new ArticlesCatsModel();

$controller    = new ArticlesController($articlesmodel,$catsmodel);

$controller->show();

?>

globals.php:

<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);

define('ROOT',dirname(__FILE__));
define('INC',ROOT.'/includes/');
define('CORE',INC.'/core/');
define('MODELS',INC.'/models/');
define('CONTROLLERS',INC.'/controllers/');
define('LIBS',INC.'/libs/');

/*
core files
*/
require_once(CORE.'config.php');
require_once(CORE.'mysql.class.php');
require_once(CORE.'raintpl.class.php');
require_once(CORE.'system.php');

System::Store('db',new mysql());
System::Store('tpl',new RainTPL()); //class RainTPL
?>

ArticlesController.php

<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);


require_once(MODELS.'ArticlesModel.php');
require_once(MODELS.'ArticlesCatsModel.php');


class ArticlesController
{

    private $articlesModel; //Articles Model Object
    private $articlesCatsModel; //Articles Cat Model Object
                               //object of ArticlesModel class
    public function __construct(ArticlesModel $articlesmodel,ArticlesCatsModel $catsmodel)
    {

        $this->articlesModel     = $articlesmodel ;
        $this->articlesCatsModel = $catsmodel ; 
    }


    public function Show()
    {
        // array of articles from model :D 
        /*
           he takes object from Articlesmodel.php
           like private articles model 
           then he  call the Get function 
           from  ArticlesModel Class 
        */

        $articles = $this->articlesModel->Get();
        $cats     = $this->articlesCatsModel->Get();


        //put them inside the template after getting them
        System::Get('tpl')->assign('articles',$articles)    ;   
        System::Get('tpl')->assign('cats',$cats)    ;   

        // show them in the templatee

        System::Get('tpl')->draw('blog');
    }

}

Blog Where articles should be shown

but there's no problem in Blog

the problem is that $articles = $this->articlesModel->Get(); returns blank array doesn't contain the information from DB

The ArticlesCatsModel

ArticlesCatsModel includes/model

The ArticleModel

ِArticlesModel

3: http://pastebin.com/z2dzcBVc it returns blank array even there are rows in DB


This is Template i should see the articles that i get from DB

but the result is No Articles

to check where exactly the problem

i typed

in Articles.Controller.php

    $articles = $this->articlesModel->Get();
    var_dump($articles).'<br/>'; 
    $cats     = $this->articlesCatsModel->Get();
    print_r($cats); 

and if you noticed in the picture it success when i call $cats but i return blank array of $articles

Template

Upvotes: 0

Views: 120

Answers (1)

Jo Smo
Jo Smo

Reputation: 7169

Try to replace

SELETE * FROM 

with

SELECT * FROM 

in your Get() method in ArticlesModel.php file.

Upvotes: 1

Related Questions