Jaka jest różnica między programowaniem po stronie klienta a programowaniem po stronie serwera?

Mam ten kod:

<script type="text/javascript">
    var foo = 'bar';
    <?php
        file_put_contents('foo.txt', ' + foo + ');
    ?>

    var baz = <?php echo 42; ?>;
    alert(baz);
</script>

Dlaczego nie zapisuje „baru” w moim pliku tekstowym, ale ostrzega „42”?

Uwaga: Wcześniejsze wersje tego pytania dotyczyły bezpośrednio PHP na serwerze i JavaScript na kliencie. Zasadniczy charakter problemu i rozwiązań jest taki samkażdy para języków, gdy działa na kliencie, a druga na serwerze. Proszę wziąć to pod uwagę, gdy zobaczysz odpowiedzi mówiące o określonych językach.

questionAnswers(5)

yourAnswerToTheQuestion