[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Вставка PHP в тело HTML
phillipJfry
Подскажите, как быть. Ситуация такая: Есть база MySQL в которую занесены тексты.

Тексты выводятся с базы на страницу простым оператором echo

Но вот проблема. Есть текст в теле которого присутствует переменная. При выводе такого текста эта переменная интерпретируется как текст и значение в нее не подставляется. Как сохранить текст с переменной в базу, а затем его вывести что бы в переменную подставлялись значения?

Например в базе хранится следующий текст.
<p>Моему дедушке $k лет исполнилось вчера.</p>



Вывод текста
<?
извлечение текста в переменную $text;
$k = 80;
echo $text;
?>


После такого вывода получается
Моему дедушке $k лет исполнилось вчера.

А как получить
Моему дедушке 80 лет исполнилось вчера.


Заранее спасибо!!!



Спустя 7 минут, 14 секунд (14.04.2010 - 10:52) phz написал(а):
Попробуйте записать в базу

Моему дедушке ".$k." лет исполнилось вчера


Хотя нет, есть функция eval

Спустя 3 минуты, 47 секунд (14.04.2010 - 10:56) phillipJfry написал(а):
Пробовал, выводится точно так на экран

Моему дедушке ".$k." лет исполнилось вчера

Спустя 8 минут, 21 секунда (14.04.2010 - 11:04) twin написал(а):
eval() лучше не рисковать применять к тексту из базы. Если пройдет sql инъекция, то автоматически появится полный доступ к фс.

Лучше делать заменой.
Моему дедушке {YEAR} лет исполнилось вчера


$k = 80;
echo str_replace('{YEAR}', $k, $text);

Спустя 2 минуты, 23 секунды (14.04.2010 - 11:07) ZSH написал(а):
попробуй
echo "$text";

в двойных кавычках

Спустя 13 минут, 51 секунда (14.04.2010 - 11:20) twin написал(а):
ZSH

Вот этого никогда не нужно делать.

Спустя 8 минут, 11 секунд (14.04.2010 - 11:29) phillipJfry написал(а):
Цитата (twin @ 14.04.2010 - 08:04)
eval() лучше не рисковать применять к тексту из базы. Если пройдет sql инъекция, то автоматически появится полный доступ к фс.

Лучше делать заменой.
Моему дедушке {YEAR} лет исполнилось вчера


$k = 80;
echo str_replace('{YEAR}', $k, $text);

большое спасибо!!! все заработало user posted image

А как быть с eval(), куда его подставлять?


Спустя 9 часов, 57 минут, 48 секунд (14.04.2010 - 21:26) MatrixGod написал(а):
в двойные кавычки переменную засунь...

echo("Моему дедушке $k лет исполнилось вчера.");
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.