В этой части раздела приводится обзор основных составляющих языка РНР с примерами. Каждый из примеров — образец реальной программы, используемый при построении сайта электронной коммерции. Все материалы раздела расчитаны на пользователей уже знакомых с языком серверных сценариев РНР. Изучение технологии РНР мы начнем с реализации формы заказа для вымышленной компании АВС, торгующей автомобилями и запасными частями к ним. Здесь мы еще раз узнаем, какие типы переменных существуют в языке РНР, и познакомимся с приоритетами операций.
И так создадим форму заказа товара, в которой будут отображено: наименование товара, количество и информация о клиенте.
<body>
<form action="processorder.php" method="post">
<table width="500" border="0">
<tr bgcolor="#000066">
<td width="200" style="color:#FFF">Наименование товара</td>
<td width="20" style="color:#FFF">Количество</td>
</tr>
<tr>
<td>Фильтры масленные</td>
<td><input name="filtr" type="text" size="3" maxlength="3"></td>
</tr>
<tr>
<td>Фильтры воздушные</td>
<td><input name="filtr_v" type="text" size="3" maxlength="3"></td>
</tr>
<tr>
<td>Свечи зажигания</td>
<td><input name="sparkqty" type="text" size="3" maxlength="3"></td>
</tr>
<tr>
<td>Как вы нашли нашу компанию</td>
<td>
<select name="find">
<option value="a" selected>Я регулярный клиент</option>
<option value="b">Увидел в рекламе</option>
<option value="с">По рекомендации</option>
</select>
</td>
</tr>
<tr>
<td colspan="2" align="center"><input name="" type="submit" value="Отправить заказ"></td>
</tr>
</table>
</form>
</body>
</html>
В окне веб-браузера это будет выглядеть ТАК.
Действию формы (action) присвоено имя РНР-сценария, который будет обрабатывать заказ клиента. В общем случае значением атрибута action является URL-адрес, который будет загружаться после щелчка пользователя по кнопке Sybmit (Отправить заказ). Данные введенные пользователем в форму с помощью метода, отправляются по этому URL-адресу с помощью метода, указанного в атрибуте method.
Имена полей filtr — количество масляных фильтров, filtr_v — количество воздушных фильтров, sparkqty — кличество свечей зажигания, впоследствии будут использоваться в РНР-сценарии.
Для обработки формы напишем сценарий, указанный в атрибуте action дескриптора form, и назовеь его processorder.php.
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Компания АВС. Результаты заказа</title>
</head>
<body>
<h2>Компания АВС</h2>
<h3>Результаты заказа</h3>
<?php
echo "<p>Заказ обработан</p>";
?>
</body>
</html>
Сохраните файл.
А теперь заполните форму заказа и щелкните по кнопке Отправить заказ.
В окне веб-браузера это будет выглядеть ТАК.
Код, помещенный в этот файл, можно отнести к следующим четырем типам:
Большинство строк в приведенном выше примере — простой HTML-код.
А теперь разберем то, что написали.
РНР-код в предыдущем примере начинается с конструкции <?php и за вершается конструкцией ?>. Эти символы называются РНР-дескрипторами, поскольку указывают веб-серверу, где начинается и где заканчивается РНР-код.
Любой текст, находящийся между ними, интерпретируется как РНР-код. Текст за пределами этих дескрипторов трактуется как обычный HTML-код. РНР-дескрипторы позволяют перейти с кода HTML на другой код.
Существуют четыре различных стиля РНР-дескрипторов:
<?php echo "<p>Заказ обработан</p>"; ?>
Является наиболее предпочтительным в РНР
<? echo "<p>Заказ обработан</p>"; ?>
Этот стиль является самым простым и соответствует стилю обработки языка SGML. Чтобы использовать этот дескриптор, достаточно включить переменную short_open_tags в файле конфигурации php.ini
<script language = 'php'>echo "<p>Заказ обработан</p>";</script>
Этот стиль является самым длинным и используется, когда возникают проблемы с другими стилями.
<% echo "<p>Заказ обработан</p>"; %>
Использованию этого стиля отдается предпочтение в случае работы с редактором, ориентированном на ASP или ASP.NET.
Действия, которые должен выполнить интерпретатор РНР, задается операторами РНР, помещенными между открывающим и закрывающим дескриптором. В рассматриваемом примере используется один вид оператора:
<?php echo "<p>Заказ обработан</p>"; ?>
Оператор echo выполняет очень простое действие — выводит в окно веб-браузера переданную ему строку.
В конце строки находится точка с запятой, которая выполняет роль разделения предложения.
Пустые символы, такие как пустые строки (возврат каретки), пробелы между словами и символы табуляции — образуют категорию пробелов. Веб-браузеры игнорируют пробельные символы в HTML-коде. Механизм РНР действует точно также.
Понятие комментария имеет следующий смысл: комментарии к коду служат пояснениями для людей, разбирающихся с текстом программы и используются для описания соответствующего сценария. Интерпретатор РНР игнорирует любой текст помещенный в комментарий.
РНР поддерживает комментарии в стиле С, С++ и сценариев оболочки.
Сценарий в стиле С:
/*. . . текст . . .*/
Сценарий в стиле С++:
// текст
Сценарий стиля оболочки:
# текст
Похожие материалы по теме: Пример PHP-программы. Использование PHP в Web