Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/8: Рейтинг темы: голосов - 8, средняя оценка - 4.50
-15 / 10 / 6
Регистрация: 03.10.2012
Сообщений: 532
1

Перехват сгенерированной страницы

15.02.2015, 13:43. Показов 1663. Ответов 19
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здрасти...Псмотрев на темы которые тут обсуждаются - не уверен что у когонибудь хватит знаний мне помочь, но всё же.

Я обрабатываю index.html в переменной и после в eval сую его.
PHP
1
2
3
<?php
eval(' ?> ' . $page . ' <?php ');
?>
Но дело в том что весь html код ну и впрочем echo с print там если есть - возьмут и пользователю отобразят страницу - а мне нужно выполнить обработку php и html при этом не отобразив пользователю не чего а обратно в переменую получить результат. Для дальнейшей обработки.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.02.2015, 13:43
Ответы с готовыми решениями:

Сохранение сгенерированной страницы в файл
Приветствую! У меня есть страница с кучей форм, которая отправляет данные из форм php-скрипту. Он...

Отображается код скрипта вместо сгенерированной страницы
Всем привет, учу Python и захотелось написать веб-приложение. За движок взял BottlePy. Всё...

Перехват загружаемой страницы
Здравствуйте! Подскажите, как перехватить страницу, которую в данный момент загружает браузер,...

Перехват javascript для определения, был ли запрос на подтверждение ухода со страницы
Нужно узнать вызывается ли месседж бокс в браузере при закрытии страницы с текстом вроде &quot;Вы...

19
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
15.02.2015, 13:48 2
Цитата Сообщение от SkoTi Посмотреть сообщение
не уверен что у когонибудь хватит знаний мне помочь

Не по теме:

Да куда нам тупням до Вашего божественного кода...

5
Заблокирован
15.02.2015, 14:11 3
PHP
1
2
3
4
5
6
7
8
9
<?php
$text = 'echo \'Hello World\';';
// Вот и обрабатывай $text как хочешь
// а eval() выводит его для выполнения
eval($text);
 
$text2 = '<?php echo \'Hello World\';?>';
eval('?>'.$text2.'<?php ');
?>
0
433 / 352 / 259
Регистрация: 29.11.2011
Сообщений: 628
15.02.2015, 14:31 4
Лучший ответ Сообщение было отмечено SkoTi как решение

Решение

Цитата Сообщение от SkoTi Посмотреть сообщение
выполнить обработку php и html при этом не отобразив пользователю не чего а обратно в переменую получить результат
Просто используйте функции контроля вывода

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
<?
    $index_html = "text <? echo 2*2; ?> text";
?>
 
<? 
    ob_start();
    eval(" ?> {$index_html} <?php ");
    $index_html_result = ob_get_clean();
?>
 
<?
    echo $index_html_result;
?>
Result: text 4 text
1
Заблокирован
15.02.2015, 17:28 5
Зачем нужен eval? Наверняка файл предварительно читается в переменную. Если так, будет достаточно include().
1
-15 / 10 / 6
Регистрация: 03.10.2012
Сообщений: 532
16.02.2015, 09:13  [ТС] 6
miketomlin, У меня умный Framework который не имеет тела в конрне. В корне только папка Framework и .htaccess
И данный фрейм цепляется к любому шаблону. ТОбишь index.html закидываешь и без какого либо дополнительного редактирования он ужен приврощается в полноценный сайт.
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
16.02.2015, 16:28 7
SkoTi, ну вот кто-то вам зальет свой файлик и за-eval-ит его
Цитата Сообщение от SkoTi Посмотреть сообщение
и без какого либо дополнительного редактирования
Имхо, это далеко не умный Framework. Есть куда как более безопасные способы подключения и исполнения файлов - выше уже говорили про include. Почитайте про то, как реализуют шаблонизацию в других фреймворках. Или же, если не хотите - используйте уже готовые движки-шаблонизаторы (Twig, Smarty, ...). Там, по-крайней мере, позаботились о безопасности.
P.S. PHP+TPL
0
-15 / 10 / 6
Регистрация: 03.10.2012
Сообщений: 532
18.02.2015, 11:06  [ТС] 8
TPL зло и кал.

Что касается залить файлик... Ну ок - залей фалик в вк =D
Я же не пропущу такой фигни и + у меня не всё так просто подключается и срабатывается. Например сейчас реализовываю систему плагинов которой будет удобно работать с уже готовой страницой скопмилированной после ядра а также подключения своих api тем самым можно будет на основе фрейма делать целый культ плагинов =D

А люди которые ожидают чегото от TPL и MVC(HMVC) чегото - просто.... ну грубо говоря поломники верующие в бога.
Взять туже джумля или битрикс.... Какова у них система редактировпния файлов. И взять мой редактор файловой структуры. Который открывает код в модалках в полноценном WEB IDE который остаются даже при переходам по страницам + свою ситсему редактирования html ввел и сделал систему ключей которые в данном редакторе всталяются лехко нажатием CTRL+B.
Я уже молчу про систему сохранения модалок в случае случайного закрытия или аварийного выключения пк по какой либо из причин.
0
Jodah
18.02.2015, 11:27
  #9

Не по теме:

Тема создана для понтов :D

0
-15 / 10 / 6
Регистрация: 03.10.2012
Сообщений: 532
18.02.2015, 12:07  [ТС] 10
Jodah,

Не по теме:

Комент твой для потов, а проблему в теме - выше мне помогли решить. Благодоря этому и появилась система плагинов по работе с сгенерированной страницой.

0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
18.02.2015, 12:30 11
Цитата Сообщение от SkoTi Посмотреть сообщение
TPL зло и кал.
ага, особенно, когда не понимаешь, что это такое вообще.
Цитата Сообщение от SkoTi Посмотреть сообщение
Что касается залить файлик... Ну ок - залей фалик в вк =D
Заливали, и не один раз. Навскидку, например http://vkurse.ru/article/hacking_vk/.
И да, не сравнивайте себя с командой вк. Во-первых, вам до них еще расти и расти, я уверен в этом А во-вторых, там не один человек занимается безопасностью. Причем они занимаются только вопросами безопасности, не отвлекаясь на допиливание всяких свистоперделок.
Как минимум, XSS никто не отменял.
Цитата Сообщение от SkoTi Посмотреть сообщение
А люди которые ожидают чегото от TPL и MVC(HMVC) чегото - просто.... ну грубо говоря поломники верующие в бога.
Да-да, конечно. Чайники, чего уж там. Куда им всем до вас, эксперта из экспертов
Только маленькое уточнение: зачем что-то ожидать от технологии? Ее можно просто использовать или не использовать. Вот и все. И "опускать" другую технологию только потому, что вы ее не знаете и не понимаете выглядит просто глупо и нелепо.
Цитата Сообщение от SkoTi Посмотреть сообщение
Взять туже джумля или битрикс.
Нашли, что взять..
Цитата Сообщение от SkoTi Посмотреть сообщение
Какова у них система редактировпния файлов. И взять мой редактор файловой структуры. Который открывает код в модалках в полноценном WEB IDE который остаются даже при переходам по страницам + свою ситсему редактирования html ввел и сделал систему ключей которые в данном редакторе всталяются лехко нажатием CTRL+B.
и которое и в подметки не годится, например, cloud9. Тоже мне, великое изобретение. Возьми ace редактор, влепи его на страницу и за месяц можно сделать тоже самое, что и у тебя - только в разы лучше. И без всяких бгпротивных eval-ов.
1
-15 / 10 / 6
Регистрация: 03.10.2012
Сообщений: 532
18.02.2015, 13:21  [ТС] 12
KOPOJI, В качестве web IDE я его и юзаю. Ace
А вся речь о чайниках. Это речь поломника...

Безопасность. Ну вот на хстебудет один index.html с 1 срочкой - hallo world - Залей на этот хост чтонибудь... ПРактика показывает что единственные дыры это те которые мы сами делаем.

ps Я не говарил в начале что я делаю самый гениальный продукт. Я лишь расказываю о том что пытаюсь сделать что то автоматизированное на многие мне нужные действия.
Вот щас например плагин пишу который автоматизированно вызывается:

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function StaticPags_init() {
    if (isset($GLOBALS['GET'][0], $GLOBALS['GET'][1]) and is_file(TRRoot.'/pages/'.$GLOBALS['GET'][0].'/'.$GLOBALS['GET'][1])) {
            $file = TRRoot.'/pages/'.$GLOBALS['GET'][0].'/'.$GLOBALS['GET'][1];
    } elseif (isset($GLOBALS['GET'][0]) and is_file(TRRoot.'/pages/'.$GLOBALS['GET'][0])) {
        $file = TRRoot.'/pages/'.$GLOBALS['GET'][0];
    } elseif (is_file(TRRoot.'/pages/index.html')) {
        $file = TRRoot.'/pages/index.html';
    } else {
        die('Error for plugin <<b>StaticPage</b>> - not file content.');
    }
    $page = file_get_contents($file);
    preg_match("|\<title\>(.*)\<\/title\>|isU", $page, $pagetitle);
    if (isset($pagetitle[1]) and !empty($pagetitle[1])) {
        $GLOBALS['HTML'] = str_replace('<title>', '<title>'.$pagetitle[1].' - ', $GLOBALS['HTML']);
        $page = preg_replace('|(<title>)(.+)(</title>)|isU', "", $page);
    }
    $GLOBALS['HTML'] = str_replace('{STATIC_PAGE}', $page, $GLOBALS['HTML']);
}
Эта функция совершенно автоматически вызвается при инициализации всех плагинов. И да! Это возможно не лучший выход но это автоматизированно и с данным плагином я могу забыть о некоторыых вещах и в дальнейшем пилить Landing Page или простые сайты лишь за одну верстку. Вот цель! Если же будет интернет мгазин или тот же ВК писать то будет совершенно по другому.

ps. в конце концов. Я не гуру а лишь программист: C# php js jass lua (Моды для игр, карты для игр, сайты, верстка, сися БД.) Опять же не хвастаю а лишь описываю то что я могу много но не стремлюсь стать в чемто гуру =( А лишь эксперементирую и познаю что то новое.
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
18.02.2015, 13:38 13
Цитата Сообщение от SkoTi Посмотреть сообщение
PHP
1
2
3
4
5
if (isset($GLOBALS['GET'][0], $GLOBALS['GET'][1]) and is_file(TRRoot.'/pages/'.$GLOBALS['GET'][0].'/'.$GLOBALS['GET'][1])) {
            $file = TRRoot.'/pages/'.$GLOBALS['GET'][0].'/'.$GLOBALS['GET'][1];
    } elseif (isset($GLOBALS['GET'][0]) and is_file(TRRoot.'/pages/'.$GLOBALS['GET'][0])) {
        $file = TRRoot.'/pages/'.$GLOBALS['GET'][0];
    }
отличная проверка. Особенно порадовало использование $GLOBALS везде и подключение чего-то из $GLOBALS)
Цитата Сообщение от SkoTi Посмотреть сообщение
PHP
1
if (isset($pagetitle[1]) and !empty($pagetitle[1]))
PHP
1
if (!empty($pagetitle[1]))
Не катит?)
Цитата Сообщение от SkoTi Посмотреть сообщение
Я не гуру
однако берете на себя смелость утверждать, что другие технологии - УГ.
Зачем тут вообще eval - я не могу понять (и навряд ли смогу) - мне это видится жутким костылем.
Предложенные другими варианты вы отметаете, при этом еще и "наезжая" Не знаю, как другие, но я очень мало знаю действительно хороших программистов, которые так зло реагируют на чужое мнение - обычно так реагируют новички. Серьезные программисты либо стараются доказать свою точку зрения, либо же прислушиваются к мнению чужих, если не уверены в своей правоте. Но никогда они не скажут, что "это УГ, это супер" даже не разобравшись. И да, eval считается одной из самых опасных конструкций и не рекомендуется к использованию ни в одном языке. Ну разве что JS, но это вообще отдельная песня.
0
-15 / 10 / 6
Регистрация: 03.10.2012
Сообщений: 532
18.02.2015, 13:52  [ТС] 14
KOPOJI, Нет, я утверждаю про другие технологии что они УГ ибо видел как они работаю и считаю нецелисообразным усложнение всего исполняемого.

Что касается evel то здсь у меня минимум 2 раза проходит через eval.
Первый это получение основной структуры сайта ибо там HTML и мене нужно сделать полную обработку как бы это сделал тот же самый апатч. И получившийся результат я уже обрабатываю на разные мелкие мелочи, и скажите - после мне надо говый результат который в переменной какимто макаром еще раз include?

Что касается опасности - опять же, если не дать коду вельнуть в право или в лево то и просто так не хакнешь.

В конце концов, я не собираюсь на нем пилить ВК. Это лишь автоматизированная система которая цепляется сами без каких либо замен или действий в html шаблоне. Даже если сайт уже работат - то закинув мой фрейм - который не как не заставит куда либо перемещать основной сайт - будет служить сайту админкой и небольшим функционалом по управлению и автоматизации.
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
18.02.2015, 14:03 15
SkoTi, да ничего вы не видели, не надо заливать. Просто не разобрались. Это отлично видно из этой фразы:
Цитата Сообщение от SkoTi Посмотреть сообщение
усложнение всего исполняемого
Цитата Сообщение от SkoTi Посмотреть сообщение
Что касается evel то здсь у меня минимум 2 раза проходит через eval
Ну вы прям с каждым разом все увеличиваете и увеличиваете мою уверенность в качестве кода..
Цитата Сообщение от SkoTi Посмотреть сообщение
Первый это получение основной структуры сайта ибо там HTML и мене нужно сделать полную обработку как бы это сделал тот же самый апатч
О да. Вы хоть знаете, о чем говорите? Почитайте литературу какую хотя бы, наподобие такого http://www.nestor.minsk.by/sr/2005/05/sr50522.html
Цитата Сообщение от SkoTi Посмотреть сообщение
и скажите - после мне надо говый результат который в переменной какимто макаром еще раз include?
функции контроля вывода абсолютно также можно применять и к подключенным файлам. Кстати, по ссылке в теме и это есть.

В общем, делайте, что хотите. Думайте, что хотите. Мне уже ясен и ваш уровень знаний, и качество вашего кода. Не имею ни малейшего желания это обсуждать и что-то доказывать стенке.
Другими словами, сливаюсь, оставляя экспертам белый флаг или что там еще)
0
-15 / 10 / 6
Регистрация: 03.10.2012
Сообщений: 532
18.02.2015, 14:41  [ТС] 16
KOPOJI, У меня всё прекрасно и я вижу наглядно увелечения простаты использования своего творения. Только что то вас не вижу в спискеразрабов vk или сайта для Apple или сайта майкрасофта...

А что касается моего уровня знаний и качества кода... Ну знаетели - Я потерял в этом ООП MVC HMVC одного знакомого который ушел в эту праведность начитавшись статей - Толком не 1 проекта не сделал что бы был полноценный релиз. Лишь только развитие и постоянные переписывания в лучшую сторону своего кода а экзекут тайм почти всегда был выше чем у меня. Я уже млочу про эти дибильные строения - MVC. Где постоянно что то куда то наследует и не известно зачем.

Я же начинал заниматься пыхой на ровне с ним но однако сейчас работаю начальником отдела программирования web студии, и во всех своих творениях нахожу пременение своим идеям которые возможно попахивают быдлокодом но работают!

Я же вижу свои сильные стороны и вижу свои творения, Dota LoD, World of warcraft (сервер плеть), zm_tixic_house4, VK SPAMBOT, частые выигрывания в конкурсах картостроителей на iccup.

Ваш же ник говарит сам за себя, если же быть точным - гляньте на Данте из Devel May Cry 4, Буквально в ютюб залезте и посмотритей какиенить моменты, что бы вам было видно примерно ваше поведение со стороны.

Я же считаю что диалог с очередным праведником не кчему кроме как к анальному взрыву со стороны праведника не приведет так как я любыесвои слова могу подтвердить делом а не криками - Эти технологии разробатывались командами.
Поэтому идите, работайте в вк и или в майкрасофт... Там таких талантов ждут. А я пожалуй уйду от личности которая бы лет 20 назад кричала бы в пользу запрета интернета и мобильной телефонии.

ps. Да простит меня господь за мое корявое правописание =(
pss. Кроме бесконечного парирования от вас не чего по делу. Мб вы с жиру беситесь от тогокакой вы обалденный прогер но в тот же момент бесполезный в решении данного вопроса и понимании самой идеи.
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
18.02.2015, 15:00 17

Не по теме:

Цитата Сообщение от SkoTi Посмотреть сообщение
увелечения простаты использования своего творения
:rofl:


Цитата Сообщение от SkoTi Посмотреть сообщение
Только что то вас не вижу в спискеразрабов vk или сайта для Apple или сайта майкрасофта
Вас там тоже не видно. А что это меняет?
Цитата Сообщение от SkoTi Посмотреть сообщение
эти дибильные строения - MVC. Где постоянно что то куда то наследует и не известно зачем.
MVC никоим образом не относится к ООП вообще. Может, хватит уже тыкать пальцем в ж небо и хоть ознакомитесь с понятиями?
Цитата Сообщение от SkoTi Посмотреть сообщение
Ваш же ник говарит сам за себя
мой ник ни о чем не говорит и никоим образом не связан с моими познаниями в какой-либо области.
Цитата Сообщение от SkoTi Посмотреть сообщение
Я же считаю что диалог с очередным праведником не кчему кроме как к анальному взрыву со стороны праведника
бойтесь, чтоб взрыв был направлен не в вашу сторону. А то худо будет)
Цитата Сообщение от SkoTi Посмотреть сообщение
так как я любыесвои слова могу подтвердить делом а не криками
о да, я вижу)
Цитата Сообщение от SkoTi Посмотреть сообщение
Эти технологии разробатывались командами
целая команда чайников, прелесть
Цитата Сообщение от SkoTi Посмотреть сообщение
Поэтому идите, работайте в вк и или в майкрасофт
Спасибо, как нибудь сам разберусь.
Цитата Сообщение от SkoTi Посмотреть сообщение
А я пожалуй уйду от личности которая бы лет 20 назад кричала бы в пользу запрета интернета и мобильной телефонии.
ой, да пожалуйста, я еще в предыдущем сообщении написал, что тут уже и так все ясно. Все вокруг - ничего не шарят, и только вы стоите в белом платье понимаете все лучше всех)
Кстати, да. Без интернета было веселее, народ хоть на улице появлялся. Книжки там читал и т.д. А сейчас только ленту новостей просматривают (не все, конечно, но большинство).
Цитата Сообщение от SkoTi Посмотреть сообщение
Кроме бесконечного парирования от вас не чего по делу
по какому делу?
Цитата Сообщение от SkoTi Посмотреть сообщение
Мб вы с жиру беситесь от тогокакой вы обалденный прогер
нет. Я от веселья маюсь, от того, какой вы обалденный прогер
Цитата Сообщение от SkoTi Посмотреть сообщение
бесполезный в решении данного вопроса
какого вопроса-то?
Цитата Сообщение от SkoTi Посмотреть сообщение
понимании самой идеи
какой идеи?
0
pav1uxa
18.02.2015, 20:14
  #18

Не по теме:

ох и любит корол "пообщаться" с разными такими личностями :D

0
KOPOJI
18.02.2015, 20:25
  #19

Не по теме:

настроение поднимает, время убивает ;)

0
365 / 372 / 89
Регистрация: 01.12.2013
Сообщений: 1,629
18.02.2015, 20:46 20
Цитата Сообщение от LASSO Посмотреть сообщение
Просто используйте функции контроля вывода
там даже callback можно прикрутить, даже без eval. output_callback - первый callable параметр в ob_start
1
18.02.2015, 20:46
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.02.2015, 20:46
Помогаю со студенческими работами здесь

Редирект статьи сгенерированной php
Здравствуйте! Возник такой вопрос. Есть база со статьями. После реорганизации разделов изменились...

Редирект статьи сгенерированной php
Здравствуйте! Возник такой вопрос. После написания нового кода сайта изменились пути к некоторым...

Изменить содержимое сгенерированной скриптом формы
Всем здравствуйте.А можно ли в сам скрипт, что нибудь добавить например: сейчас на сайте, новые...

Открытие сгенерированной html (не имеющей filepath) в IE
Здравствуйте! Необходимо открыть страницу сгенерированную программно в браузере internet...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru