При добавлении какого-либо html или php кода, содержащего спец.символы (типа >,   и т.д.) из PHP скрипта в <textarea>...</textarea> получаем замену этих спец. символов на символ которое обозначает этот символ (т.е. '&', ' ' и т.д.). И получил массу неприятных минут, когда только что работающая вещь вдруг перестаёт работать.
Вот пример формы:
$string = "<?php $t = 5 + 1; echo '$t = '.$t; ?>";
echo "
<form method='post' >
<textarea name='ta'>".$string."</textarea>
<input type=submit value='submit form'>
</form>
";
После отправки формы обратно, полученный текст в $string = &$_POST["ta"] превратится в $string = "<?php $t = 5 + 1; echo '$t = '.$t; ?>";
Решение довольно простое использовать, перед отправкой данных в <textarea>, функцию htmlspecialchars().
echo "
<form method='post' >
<textarea name='ta'>".htmlspecialchars( $string )."</textarea>
<input type=submit value='submit form'>
</form>
";