<html>
<head>
<script src="js/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
function updateLabelValue() {
$("#labelId").text($("#labelVal").val());
}
</script>
</head>
<body>
<br/>
Label:<label id="labelId" for="error"></label><br/>
<input type="text" id="labelVal" name="labelVal"><input type="submit" onclick="updateLabelValue();" value="Change Label">
</body>
</html>
Здесь вступают в игру jQuery + AJAX. Поскольку PHP является языком сценариев на стороне сервера, весь PHP компилируется на сервер и отправляется клиенту. После получения контента клиентом в веб-браузере компилируется JavaScript, HTML, CSS и другой код на стороне клиента.
Чтобы изменить представление на стороне клиента с использованием сценариев на стороне сервера, потребуется либо обновление страницы, либо вызов ajax (для обновления значения метки без необходимости перезагрузки страницы).
Решение Мариена - не-ajax-версия, которая потребует перезагрузки страницы.
На самом деле вам даже не нужен PHP. JQuery сделает всю работу.