ресурс для начинающих веб-разработчиков
комплексные веб-услуги по созданию сайтов

Справочный материал по основным языкам программирования и верстки сайтов.

Готовая методика создания простых и сложных динамичных сайтов, с использованием PHP и MySQL.

Использование веб-редактора Adobe Dreamweaver в разработке сайтов.

Использование графических редакторов Adobe Flash, Adobe Photoshop, Adobe Fireworks в подготовке веб-графики.

Разработка веб-сайтов под "ключ".

Разработка отдельных фрагментов сайтов, консультации по вопросам верстки веб-страниц и веб-программирования.

Примеры использования РНР

Примеры использования РНР

В этой части раздела приводится обзор основных составляющих языка РНР с примерами. Каждый из примеров — образец реальной программы, используемый при построении сайта электронной коммерции. Все материалы раздела расчитаны на пользователей уже знакомых с языком серверных сценариев РНР. Изучение технологии РНР мы начнем с реализации формы заказа для вымышленной компании АВС, торгующей автомобилями и запасными частями к ним. Здесь мы еще раз узнаем, какие типы переменных существуют в языке РНР, и познакомимся с приоритетами операций.

Форма заказа

И так создадим форму заказа товара, в которой будут отображено: наименование товара, количество и информация о клиенте.

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>Компания АВС</title>
</head>

<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 — кличество свечей зажигания, впоследствии будут использоваться в РНР-сценарии.

Обработка формы. Встраивание РНР в HTML

Для обработки формы напишем сценарий, указанный в атрибуте action дескриптора form, и назовеь его processorder.php.

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>Компания АВС. Результаты заказа</title>
</head>

<body>
<h2>Компания АВС</h2>
<h3>Результаты заказа</h3>
<?php
echo "<p>Заказ обработан</p>";
?>
</body>
</html>

Сохраните файл.

А теперь заполните форму заказа и щелкните по кнопке Отправить заказ.

Код, помещенный в этот файл, можно отнести к следующим четырем типам:

  • HTML;
  • дескрипторы РНР;
  • пробелы.

Большинство строк в приведенном выше примере — простой HTML-код.

А теперь разберем то, что написали.

РНР-код в предыдущем примере начинается с конструкции <?php и за вершается конструкцией ?>. Эти символы называются РНР-дескрипторами, поскольку указывают веб-серверу, где начинается и где заканчивается РНР-код.

Любой текст, находящийся между ними, интерпретируется как РНР-код. Текст за пределами этих дескрипторов трактуется как обычный HTML-код. РНР-дескрипторы позволяют перейти с кода HTML на другой код.

Существуют четыре различных стиля РНР-дескрипторов:

  • XML-стиль

    <?php echo "<p>Заказ обработан</p>"; ?>

    Является наиболее предпочтительным в РНР

  • Сокращенный стиль

    <? echo "<p>Заказ обработан</p>"; ?>

    Этот стиль является самым простым и соответствует стилю обработки языка SGML. Чтобы использовать этот дескриптор, достаточно включить переменную short_open_tags в файле конфигурации php.ini

  • SCRIPT-стиль

    <script language = 'php'>echo "<p>Заказ обработан</p>";</script>

    Этот стиль является самым длинным и используется, когда возникают проблемы с другими стилями.

  • ASP-стиль

    <% echo "<p>Заказ обработан</p>"; %>

    Использованию этого стиля отдается предпочтение в случае работы с редактором, ориентированном на ASP или ASP.NET.

Действия, которые должен выполнить интерпретатор РНР, задается операторами РНР, помещенными между открывающим и закрывающим дескриптором. В рассматриваемом примере используется один вид оператора:

<?php echo "<p>Заказ обработан</p>"; ?>

Оператор echo выполняет очень простое действие — выводит в окно веб-браузера переданную ему строку.

В конце строки находится точка с запятой, которая выполняет роль разделения предложения.

Пустые символы, такие как пустые строки (возврат каретки), пробелы между словами и символы табуляции — образуют категорию пробелов. Веб-браузеры игнорируют пробельные символы в HTML-коде. Механизм РНР действует точно также.

Понятие комментария имеет следующий смысл: комментарии к коду служат пояснениями для людей, разбирающихся с текстом программы и используются для описания соответствующего сценария. Интерпретатор РНР игнорирует любой текст помещенный в комментарий.

РНР поддерживает комментарии в стиле С, С++ и сценариев оболочки.

Сценарий в стиле С:

/*. . . текст . . .*/

Сценарий в стиле С++:

// текст

Сценарий стиля оболочки:

# текст