2013-03-28 3 views
0

Использование PHP и MySQL Я пытаюсь создать свою собственную CMS, но когда после урока я получил этот код

на cms_class.php

<?php 
class modernCMS{ //starts class 
    var $host; 
var $username; 
var $password; 
var $db; 
function connect(){ 
      $con=  mysql_connect( $this -> host, $this->username, $this->password); 
    mysql_select_db($this->db, $con) or die (mysql_error()) ; 
}// ends function 

function get_content(){ 
    $query= "SELECT * 
FROM cms_content ORDER BY id DESC"; 
    $result= mysql_query($$query); 

    while($row= mysql_fetch_assoc($res)){ 
     echo '<h1>' . $row['title'] . '</h1>'; 
     echo '<p>' . $row['body'] . '</p>'; 
    } 
} 

} //Ends class 

?> 

затем на моей странице индекса я есть (PHP первый)

<?php 

include '_class/cms_class.php'; 

$obj= new modernCMS(); 

//set up connection variables 
$obj->host='localhost'; 
$obj->username='root'; 
$obj->password=''; 
$obj->db='modernCMS'; 

//Connection to the DB 

$obj->connect(); 


?> 

то PHP, чтобы получить содержание от моего cms_content таблицы

<?=$obj-> get_content()?> 

когда работал на моем локальном сервере я получаю эти ошибки ....

неопределенная переменная cms_class.php строка 18 mysql_fetch_assoc()

modernCMS-> GET_CONTENT на моем индексе. php line 34

Почему это не работает?

ответ

1

В вашей функции get_content вы создаете переменную $result, но затем передаете переменную $res на mysql_fetch_assoc, которой не существует. У вас также был двойной $$ по телефону $query в вашем телефоне mysql_query, который я тоже удалил.

function get_content(){ 
    $query = "SELECT * FROM cms_content ORDER BY id DESC"; 
    $result = mysql_query($query); 

    while($row= mysql_fetch_assoc($result)){ 
     echo '<h1>' . $row['title'] . '</h1>'; 
     echo '<p>' . $row['body'] . '</p>'; 
    } 
}