Прежде всего выясним, что такое PHP
PHP - это скрипт-язык (scripting language), встраиваемый в HTML, который интерпретируется и выполняется на сервере.
Основное отличие от CGI-скриптов, написанных на других языках, типа Perl или C - это то, что в CGI-программах вы сами пишете выводимый HTML-код, а, используя PHP - вы встраиваете свою программу в готовую HTML-страницу, используя открывающий и закрывающий теги. Это чем то схоже с JavaScript, но в отличие от оного PHP скрипт выполняется на стороне сервера, когда как JavaScript выполняется браузером, то есть на стороне клиента. А теперь можно и начинать писать скрипт, и начать следует с приветствия миру.
Итак, простейший скрипт:
<?php
echo "<h1><center>Hello world</center></h1>";
?>
Любой PHP скрипт должен начинаться с тэга <?php и заканчиаться тегом ?>. Все что будет написано между этими тегами, будет обработано интерпретатором PHP. Информация вне этих тэгов будет выведена как есть.
- ХА!!!! - скажет многоуважаемый посетитель - А не проще ли просто набрать HTML файл без всяких там скриптов?
Проще! Но если Вам необходимо чтобы страница была динамической, зависимой от действий пользователя то увы :)))) скрипт писать придется.
Для этого необходимо обработать параметры приходящие от пользователя.
Для исследования переменных окружения напишем небольшой скрипт
<?php
echo "<HTML><HEAD><TITLE>Environment</TITLE></HEAD>\n";
echo "<BODY>\n";
echo "Variables:
\n";
echo "<I><B>REQUEST_METHOD</B></I>=",getenv("REQUEST_METHOD"), "
";
echo "<I><B>QUERY_STRING</B></I>=",getenv("QUERY_STRING"), "
";
echo "<I><B>CONTENT_LENGTH</B></I>=",getenv("CONTENT_LENGTH"), "
";
echo "<I><B>CONTENT_TYPE</B></I>=",getenv("CONTENT_TYPE"), "
";
echo "<I><B>GATEWAY_INTERFACE</B></I>=",getenv("GATEWAY_INTERFACE"), "
";
echo "<I><B>REMOTE_ADDR</B></I>=",getenv("REMOTE_ADDR"), "
";
echo "<I><B>REMOTE_HOST</B></I>=",getenv("REMOTE_HOST"), "
";
echo "<I><B>SCRIPT_NAME</B></I>=",getenv("SCRIPT_NAME"), "
";
echo "<I><B>SCRIPT_FILENAME</B></I>=",getenv("SCRIPT_FILENAME"), "
";
echo "<I><B>SERVER_NAME</B></I>=",getenv("SERVER_NAME"), "
";
echo "<I><B>SERVER_PORT</B></I>=",getenv("SERVER_PORT"), "
";
echo "<I><B>SERVER_PROTOCOL</B></I>=",getenv("SERVER_PROTOCOL"), "
";
echo "<I><B>SERVER_SOFTWARE</B></I>=",getenv("SERVER_SOFTWARE"), "
";
echo "<I><B>HTTP_ACCEPT</B></I>=",getenv("HTTP_ACCEPT"), "
";
echo "<I><B>HTTP_USER_AGENT</B></I>=",getenv("HTTP_USER_AGENT"), "
";
echo "</BODY></HTML>\n";
?>
При запуске этот скрипт выдаст Вам значения переменных окружения.
Можете набрать этот скрипт и поэкспериментировать с запросами, поглядите что получится, можете поглядеть здесь
Наверное самым главным в скрипте является обработка полученного запроса и выполнение действий в соответствии с этим запросом. Конечно, если Вы используете простенькие запросы типа http://kudato.tuda/cgi-bin/script.cgi?zapros то особого анализа не требуется, здесь просто нужно считать переменную QUERY_STRING и уже потом в зависимости от содержания строки совершать какието действия.
Но если зпрос будет выглядить так http://kudato.tuda/cgi-bin/script.cgi?par1=1&par2=val&par3=6 или Вы собираетесь обрабатывать данные из форм методом POST, то просто необходимо анализировать данные и преобразовывать их в "удобоваримый" формат.
В php обработка форм реализуется очень просто. При вызове скрипта интерпретатор создает переменные с именами полей в форме которые содержат значения этих полей.
Если Вы создали в форме поле <input type="text" name="T1" size="20"> то в php-скрипте обрабатывабщем эту форму будет предопределена переменная $T1 содержащая Значение поля ввода Т1.