lol_vova: Попробовал через return. Теперь код класса menu такой:
<?php
class menu extends func {
public function get_content() {
//получаем ссылку
$page = $_GET['page'];
//убираем из нее пробелы и спец. символы
$page = trim($page);
$page = htmlspecialchars($page);
$page = strip_tags($page);
//выбираем из таблицы menu эту название страницы из ссылка,если такая страница есть
$query = "SELECT name_menu FROM menu WHERE href_menu = '$page'";
$result = @mysql_query($query);
//при ошибке выводим надпись
if(!$result) {
echo "Ошибка запроса в БД!";
}
//делаем из полученного результата массив
$row = array();
$row = @mysql_fetch_array($result, MYSQL_ASSOC);
// проверяем есть ли такая страница в бд, если да, то подключаем ее
if(!empty($row['name_menu'])) {
//из ссылки localhost/index.php?option=menu&page=blog $page = "blog"
include "$page".php;
return $Page = new $page;
} else {
include "../www/modules/404_not_found.php";
}
}
}
?>
И для класс blog.php:
<?php
class blog extends func {
public function get_content() {
echo "OK";
}
}
?>
В таком случае функция get_content() ничего не выводит, но если в файл класса blog добавить строку "$Page->get_body();" дублируется хедер и сайдбар, зато выводится содержимое get_content() в классе blog
heartdevil: нет, ссылка получается index.php?option=menu&page=blog Подгружается класс menu из папки classes и загружает страницу blog.php из папки modules
heartdevil: нет нет, админка будет.
Ну вот смотрите, у меня есть файл страницы blog.php в нем есть дивы и внутри них выводятся данные из бд. Это будет правильным?
В этом файле нет класса, он лишь добавляется через класс menu через include. Я так понимаю, что его тоже надо сделать классом? То есть в классе menu вместо строки "include "..."; " написать " return $Page = new $page; " и в файле blog.php реализовать этот класс с функцией get_content() . Тогда если в будущем я захочу сделать еще один пункт меню, то его придется писать вручную, а не через админку.
Но проблема же не в верстке, а в том, как вывести эти страницы под разной версткой. Либо в бд сразу с тегами заливать, что меня пугает, либо какие-нибудь другие варианты...
И еще один вопрос, вот вы писали свой микрофреймворк, почему вы решили использовать Yii, а не дописать свой микрофрейворк? Это дело вкуса или просто проще использовать Yii или другой готовый фреймворк?
Лично мне проще учить по видео урокам.
Я нашел самоучитель по PHP(Д.Н.Колисниченко), в нем написано про основные технологии интернет(протоколы и другое). Примерно понял что к чему, но думаю, что надо перечитать.
Работу форм и запросов понимаю, чем отличается POST и GET - тоже знаю. SQL знаю на уровне запросов к базе данных, но наверное этого недостаточно?
И для класс blog.php:
В таком случае функция get_content() ничего не выводит, но если в файл класса blog добавить строку "$Page->get_body();" дублируется хедер и сайдбар, зато выводится содержимое get_content() в классе blog