Существует две основых категории скриптов - серверные скрипты (CGI и PHP скрипты) и пользовательские скрипты (java и DHTML скрипты).
Серверные скрипты - это программы, которые выполняются на стороне сервера. Основным отличием серверных скриптов является то, что они могут записывать в файл, находящийся на сервере. Наиболее распространенные примеры серверных скриптов - гостевые книги, голосования, счетчики посещений и др. CGI (Common Gateway Interface, общий шлюзовый интерфейс) представляет собой часть веб-сервера, способную взаимодействовать с другими программами, и в этом смысле является шлюзом для передачи данных, полученных от клиента, программам-обработчикам информации - базам данных, электронным таблицам и пр. Обычно CGI скрипты пишут на языке Perl, поэтому их называют Perl скриптами. PHP (Personal Home Page) - язык серверных скриптов, которые встраиваются в HTML-документы, и исполняясь на сервере, выдают результат обработки данных в окне браузера. Именно поэтому PHP называют пре-процессором HTML. PHP является очень гибким языком, поддерживает MySQL, NNTP, POP3, IMAP, Oracle, PostgreSQL, dBase, ODBC, Informix и многие другие технологии. С его помощью можно реализовать все то же, что позволяет сделать CGI-программа, отличие заключается в том, что PHP более прост для понимания. Обратите внимание на то, что далеко не все бесплатные серверы поддерживают CGI и PHP скрипты.
Пользовательские скрипты. Выполняются такие скрипты на компьютере пользователя посредством вызова определенных команд, которые обозначены в фрагментах кода обыкновенной веб-страницы. Для того чтобы они могли быть выполнены, браузер должен уметь поддерживать язык, на котором скрипты написаны. Пользовательские скрипты это java и DHTML скрипты. java скрипты - это программы, написанные на языке javascript, они встраиваются в обычные HTML страницы. Каждый javascript размещается между тегами <script language=javascript>...</script>. DHTML скрипты - скрипты написанные на языке DHTML (Dynamic HTML) также вставляется в HTML страницу. Разделение на java и DHTML весьма условное, т.к. в большинстве из них используются и javascript и DHTML. Выполнение пользовательских скриптов зависит только от браузера пользователя.