Игорь_Vasinsky
13.11.2015 - 21:11
zheev
c eval() пойдёт - но только очень осторожно.
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Цитата (Игорь_Vasinsky @ 13.11.2015 - 21:11) |
zheev c eval() пойдёт - но только очень осторожно. |
А не подскажите? Я подключил файл. Там переменная и она не выводится вне файла
Игорь_Vasinsky
13.11.2015 - 22:59
может "кодом" будем разговаривать. или тебе сюда
http://forum.bitva-extrasensov.ru/
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Подключаю файл
public function incl($page){
if($page==''){$page="index";}
$path = $_SERVER['DOCUMENT_ROOT']."/includes/".$page.".php";
if(file_exists($path)){
include_once($path);
}else{
header("HTTP/1.0 404 Not Found");
}
}
Вывожу переменную из файла
<?php
include_once("function/db.php");
include_once("function/route.php");
$route = new route;
$route->incl($_GET['modules']);
echo $title;
include_once("tpl/index.phtml");
?>
Но ничего не выводит(
Valick
13.11.2015 - 23:37
Цитата (zheev @ 13.11.2015 - 22:33) |
$route = new route; |
ох и рановато вы с классами связались
признавайтесь откуда слямзили этот роутер?
я же говорил в классе роутера должен быть метод title() , который вернёт значение
echo $route->title();
_____________
Стимулятор ~yoomoney - 41001303250491
Что-то это страшнова-то вообще-то!
Почему не использовать MVC с нормальным роутером и шаблонизатором? Тот же twig? Ну или хотя бы шаблонизатор с роутером, если с MVC пока сложно.
Есть отличные роутеры на колбэках, например вот:
https://github.com/chriso/klein.phpА в шаблонизаторе через наследование вызываешь нужный темплейт. Хочешь по GET, как угодно. Там перегружаешь блоки, какие угодно. В том числе и title.
Понятно, возможно такое решение слишком сложное для ТС, но это уже выход хоть на какой-то более или менее серьезный уровень.
Valick
13.11.2015 - 23:51
Цитата (Ron @ 13.11.2015 - 22:46) |
Понятно, возможно такое решение слишком сложное |
я вижу что человеку интересно, пусть постепенно учиться "делать красиво"
_____________
Стимулятор ~yoomoney - 41001303250491
Цитата (Valick @ 13.11.2015 - 23:51) |
я вижу что человеку интересно, пусть постепенно учиться "делать красиво" |
Ну просто как оринетир. Чтобы слишком долго не увлекался велосипедом. А то потом расстроится и вообще не будет дальше развиваться. =)))
У меня был такой период, когда руки опустились исключительно из-за того, что моё "изобретение" нашлось в 100 экземплярах и в 100 раз лучше реализованное.
AllesKlar
14.11.2015 - 02:34
Цитата (zheev @ 13.11.2015 - 21:33) |
Подключаю файл public function incl($page){ if($page==''){$page="index";} $path = $_SERVER['DOCUMENT_ROOT']."/includes/".$page.".php"; if(file_exists($path)){ include_once($path); }else{ header("HTTP/1.0 404 Not Found"); } } Вывожу переменную из файла <?php include_once("function/db.php"); include_once("function/route.php"); $route = new route; $route->incl($_GET['modules']); echo $title; include_once("tpl/index.phtml");
?> Но ничего не выводит( |
Открыта php инъекция
https://ru.wikipedia.org/wiki/PHP-%D0%B8%D0...%86%D0%B8%D1%8FВот прям первый же пример в статье - твой случай.
Я делаю запрос site.com?modules=../../config/config и инклюдю твой config.php, для начала.
Методы лечения не буду прописывать, в той же статье оно есть.
Можешь еще погуглить.
_____________
[продано копирайтерам]