Как сделать вызов PHP скрипта из MySQL

Anryk
На сайте с 11.04.2003
Offline
165
1394

Вопрос в следующем, поле таблицы MySQL содержит текст html и инструкцию include, подключающую скрипт PHP. При простом выводе поля через print или echo, скрипт не отрабатывает. А какова правильная конструкция для решения такого рода задачи?

Не время для смеха!
sirota77
На сайте с 08.09.2008
Offline
161
#1
Anryk:
А какова правильная конструкция для решения такого рода задачи?

честно говоря, не очень то стандартно используется БД

думаю include будет работать, если содержимое поля записать в файл а потом запустить

но это решение имхо такое же кривое как и задача

orphelin
На сайте с 02.07.2006
Offline
261
#2

когда-то давно тоже решал подобную задачу, решение работает до сих пор

$namess = md5(microtime().$_SERVER['REQUEST_URI']);

file_put_contents("temp/".$namess.".php", $content1);

require_once("temp/".$namess.".php");

unlink("temp/".$namess.".php");

а так была еще какая-то функция кажется, но на тот момент у меня она не заработала как надо.

orphelin добавил 04.12.2009 в 10:02

пс. $content1 - это переменная, в которой записаны данные из бд.

Anryk
На сайте с 11.04.2003
Offline
165
#3

Спасибо, но это как-то сложновато. В том смысле, что работа с файлами - лишняя нагрузка получается. Проще будет поле разбить и include в код вставить...

orphelin
На сайте с 02.07.2006
Offline
261
#4

Anryk, ну как реализуете - выкладывайте свой вариант :)

peterpro
На сайте с 14.11.2007
Offline
35
#5

Сударь знает толк в извращениях :)

А по теме -


<?php eval('?>'.$html.'<?');?>

где $html - это то,что у Вас в БД валяется.

orphelin
На сайте с 02.07.2006
Offline
261
#6

peterpro, во, точно - eval. только тогда у меня с ним не получилось не помню почему.

Anryk
На сайте с 11.04.2003
Offline
165
#7

Всем спасибо, eval() отлично работает.:)

NS
На сайте с 30.09.2008
Offline
54
#8
Anryk:
Всем спасибо, eval() отлично работает.:)

вот когда тебе заевалят html c пользовательским вводом, тогда поменёшь недобрым словом советчиков :)

ixRock
На сайте с 14.11.2006
Offline
46
#9
nonSmoker:
вот когда тебе заевалят html c пользовательским вводом, тогда поменёшь недобрым словом советчиков :)

ну там к пхпшным записям в базе у пользователей доступ врядли есть) это скорее всего для админки..

но всё равно использование eval() считается дурным тоном :)

Работаю [S]за еду и секас[/S] с XHTML, CSS, XSLT, JS, PHP. Если что, вот тут (http://www.mintdesign.ru/) некоторые мои работы. Контакты: ася 344-ноль86-276, мыло ixrock@gmail.com
NS
На сайте с 30.09.2008
Offline
54
#10
ixRock:
ну там к пхпшным записям в базе у пользователей доступ врядли есть) это скорее всего для админки..
но всё равно использование eval() считается дурным тоном :)

да евал сам по себе не страшен, и даже полезен.

а на счет доступа пользователей, если в там базе есть html который php, и который появилась нужда эвалить, то я что-то сомневаюсь, что там нет пользовательского ввода.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий