Idiots explanation to server scripting

I frequently see words like PHP, MySQL and Apache on this site, and although i know these are to do with server scripting, could someone please give a laymans explanation to what these are for?
(please bear in mind i only know HTML, CSS and Flash so i am oblivious to the use of server scripting).