X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

4 страниц V   1 2 3 4 >
Открыть тему
Тема закрыта
> Обработка PHP-кода - полученного из базы данных, Как осуществить?
AntonKh_mw
AntonKh_mw
Topic Starter сообщение 24.3.2011, 0:10; Ответить: AntonKh_mw
Сообщение #1


Возможно мой вопрос не по теме, но суть вот в чем: Пытаюсь разобраться с типом поля в SQL для для вывода следующей конструкции:
Есть сайт + БД

в БД таблица с полями
id
text (тип TEXT)

в поле text:

текстовая часть(положим абзац)
<?php include ("file.php");?>
текстовая часть(положим абзац)


Проблема в том, что при выводе из БД в странице вы видим все это как текст, а код <?php include ("file.php");?> не исполняется и тоже в виде текста.

Какой должен быть тип поля text чтобы php код исполнялся
Возможно не очень все связно пишу, очень нужно разобраться с этим.
Причина редактирования: Вопрос был выделен и перенесен в раздел PHP
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
sc2r2bey
sc2r2bey
сообщение 24.3.2011, 0:17; Ответить: sc2r2bey
Сообщение #2


а в каком типе файла вы выводите php, html?
какие кавычки вы используете при выводе переменных одинарные или двойные?
а зачем в эту конструкцию в БД засунули?
вы бы код полный бы привели


--------------------
Заметки о разработке и не только
программирую web и для we
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
yury_mw
yury_mw
сообщение 24.3.2011, 0:26; Ответить: yury_mw
Сообщение #3


AntonKh,
тип поля ни при чем.
Надо смотреть какой командой это поле text вставляется на страницу.
У вас, скорей всего, там стоит защита от инъекций, потому код и не исполняется.
Так что если хочется чтоб в БД писались исполнимые команды, следует быть осторожным, чтоб дыр не наделать.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZiTosS
ZiTosS
сообщение 24.3.2011, 0:55; Ответить: ZiTosS
Сообщение #4


AntonKh, данные же вы получаете из БД в переменную. И если вы их печатаете, то естественно интерпретатор их не подхватит. Есть комманда eval для подобного. Но с ней нужно быть аккуратным.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
AntonKh_mw
AntonKh_mw
Topic Starter сообщение 24.3.2011, 13:11; Ответить: AntonKh_mw
Сообщение #5


Вот сея конструкция

file.php


обращение к БД

[php]<?php

$result = mysql_query("SELECT * FROM table1 WHERE page='kontakt'",$db);

$myrow = mysql_fetch_array($result);

?>

Вывод из БД текстового поля

<?php echo $myrow['text']; ?>[/php]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
AntonKh_mw
AntonKh_mw
Topic Starter сообщение 24.3.2011, 13:45; Ответить: AntonKh_mw
Сообщение #6


(ZiTosS @ 24.3.2011, 1:55) *
AntonKh, данные же вы получаете из БД в переменную. И если вы их печатаете, то естественно интерпретатор их не подхватит. Есть комманда eval для подобного. Но с ней нужно быть аккуратным.


воспользовался советом

[php]<?php
$string = $myrow['text'];
eval ("\$string;");
echo $string;
?>[/php]

Но и это не помогает код по прежнему не исполняется вставляет как текст
возможно я взял не правильную конструкцию т.к. код не исполняется, если да то помогите разобраться.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Игорян_mw
Игорян_mw
сообщение 24.3.2011, 13:57; Ответить: Игорян_mw
Сообщение #7


попробуте просто вывести одно поле text так

[php]<?php

$result = mysql_query("SELECT `text` FROM `table1`",$db);

$myrow = mysql_fetch_assoc($result);

?>[/php]

Вывод из БД текстового поля

[php]<?php echo $myrow['text']; ?>[/php]

А в mysql заполните text текстом, потом дальше будем думать, по идеи должно все работать.

А где соединение с базой?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
yury_mw
yury_mw
сообщение 24.3.2011, 15:31; Ответить: yury_mw
Сообщение #8


AntonKh,
вот так команда, записанная в переменную $text, выполняется
[php]<?php
$text="echo 'test';";
eval ($text);
?>[/php]

На всякий случай, конкретно ваш случай со вставкой файла, в котором содержится свой php-код:
file.php:
[php]<div style="border: 1px solid blue; padding: 10px; width: 250px;"><strong>AntonKh</strong>,<br>тип поля ни при чем.</div>
<?php
echo '<div style="border: 1px solid red; padding: 10px; width: 250px;">Надо смотреть какой командой это поле text вставляется на страницу.</div>';
?>[/php]
наш тестовый файл, откуда мы обращаемся к БД:
[php]<?php
//вместо следующей строки у вас будет $text = $myrow['text'];
$text="include 'file.php';";
eval ($text);
?>[/php]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
AntonKh_mw
AntonKh_mw
Topic Starter сообщение 24.3.2011, 20:56; Ответить: AntonKh_mw
Сообщение #9


Игорян, Дак, собственно это начальная конструкция, которая работает на сайте.
поле Text выводится без проблем.
Поэтому и вопрос возник как выполнить php код находящийся в данном текстовом поле


к базе соединяем

<?php

include ("block/bd.php");

$result = mysql_query("SELECT `text` FROM `table1`",$db);

$myrow = mysql_fetch_assoc($result);


?>
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
AntonKh_mw
AntonKh_mw
Topic Starter сообщение 24.3.2011, 21:08; Ответить: AntonKh_mw
Сообщение #10


yury

При конструкции
<?php
$text = $myrow['text'];
eval ($text);
?>

выдает ошибку
Parse error: syntax error, unexpected '<' in /hosting/users/h3009722/www/сайт.ru/страница.php(99) : eval()'d code on line 1
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
4 страниц V   1 2 3 4 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Большие базы Semrush кейвордов по разным тематикам! Много кейвордов с трафиком и без конкуренции! Volume, KD, CPC
23 Krok 6921 Вчера, 5:58
автор: Krok
Горячая тема (нет новых ответов) Свежие базы ключевых слов с подсказок гугла!
126 Krok 68741 24.4.2024, 5:04
автор: Krok
Открытая тема (нет новых ответов) Базы Youtube кейвордов с данными по конкуренции и Volume
6 Krok 1591 23.4.2024, 5:43
автор: Krok
Открытая тема (нет новых ответов) Интеграция спортивных данных API. Коэффициенты БК, Live результаты
15 yaroslav89 6877 8.4.2024, 17:17
автор: spoyer_ru
Открытая тема (нет новых ответов) Базы досок объявлений России, Украины, Беларуси и Казахстана
5 freeax 6476 10.3.2024, 15:07
автор: freeax


 



RSS Текстовая версия Сейчас: 26.4.2024, 0:14
Дизайн