2013-05-07 1 views
0

Для простых cms я работаю над созданием класса для отображения статей внутри определенных страниц.Категория отображения страниц не ведет себя хорошо

Что я хочу, например: index.php? Страница = 1 он будет отображать все статьи соответствия PAGE_ID 1.

До сих пор он работает, он будет отображать все статьи с PAGE_ID 1, но для PAGE_ID 2 он делает не работа. Запись с page_id 2 существует в таблице db.

Класс:

include_once('./includes/config.php'); 
class Content { 


public $id; 
public $page_id; 
public $title; 
public $content; 
public $position; 



var $conn; 

function Content() 
     { 
       $this->conn = mysql_connect(Config::DB_HOST, Config::DB_USER, Config::DB_PASS); 
       mysql_select_db(Config::DB_NAME, $this->conn); 
     } 


function disp_page_articles($page) 
{ 
    $sql = 
"  SELECT 
      id 
,    page_id 
,    title 
,    content 
,    date 
,    position 
    FROM 
      articles 
    WHERE 
      page_id = $page 
    ORDER BY 
      id 
,    position"; 

    $result = mysql_query($sql, $this->conn) or die(mysql_error()); 

    if(!$result){ 
     return array(); 
    } 




    while($article = mysql_fetch_assoc($result)){ 





    $content .= ' 
     <div class="blok"> 
     <h2> 
     </br> 
     '.$article['title'].'</h2> 
     </br> 
     '.$article['content'].' 
     </br> 
     '.$article['date'].' 
     </div> 
    '; 

    } 
    return $content; 
} 

} 

Запуск класс:

include("classes/content.class.php"); 


$content = ""; 
$content = new Content(); 
$page = $_GET['page']; 

echo $content->disp_page_articles($page); 

echo "<p>Page ID: ". $_GET['page']."</p>"; 

ли я что-то забыл здесь?

+0

Echo вне SQL вы генерации, и запустить его в базе данных - это найти запись, которую вы ищете? Получаете ли вы какие-либо ошибки при запуске запроса? Разве mysql_query не находит записи или не находит их, но ничего не возвращает? – andrewsi

+0

Как вы это понимаете? Можете ли вы привести мне пример для этого? Я пробовал, но он не работает. – jediah

+0

Пример для чего? Что вы пробовали? – andrewsi

ответ

0
WHERE 
      page_id = $page 

Должно быть

WHERE 
      page_id = '$page' 
+0

не нужно, если тип столбца целое – Populus

+0

До тех пор, пока $ page INT не имеет значения, я думаю? –

+0

У меня на случай, как это было время назад. Поэтому я отключил решение>. !! :) .. Это может помочь –

Смежные вопросы