Практическая работа №2 Тема: Доступ к переменным формы. Вычисление итоговых сумм для формы. PHP-код всегда начинается с последовательности <? и завершается последовательностью?>. Эти символы называются PHP-дескрипторами, поскольку они указывают Web-серверу, где начинается, а где завершается PHP-код. Любой текст, расположенный между дескрипторами, будет интерпретироваться как PHP-код. Любой текст вне этих дескрипторов будет обрабатываться как обычный HTML-код. Действия, которые должен выполнить PHP-интерпретатор, указываются РНР-операторами, помещаемыми между открывающим и закрывающим дескрипторами. Для разделения PHP-операторов используется точка с запятой. <? Echo “Ваш заказ обработан.”;?>, где -<? и ?> - PHP-дескрипторы -echo – PHP-оператор Для вставки однострочных комментариев могут использоваться символы // и #, например: echo "Ваш заказ обработан."; // Начало вывода заказа echo "Ваш заказ обработан."; # Начало вывода заказа Многострочные комментарии должны начинаться с символов /* и завершаться символами */, например: /* Автор: Иванов Иван Дата последнего изменения: 10 сентября Этот сценарий обрабатывает заказы клиента. */ Внутри PHP-сценария к каждому из полей формы можно получить доступ как к переменной, имеющей то же имя, что и у поля формы. Имена переменных в РНР легко узнать, поскольку все они начинаются с символа доллара ($). (Пропуск символа доллара — еще одна распространенная ошибка программирования.). Имена переменных могут иметь любую длину и состоять из букв, цифр, символов подчеркивания. $green $black_white В РНР идентификаторы чувствительны к регистру. $GREEN и $Green — далеко не равнозначны. Попытка использования строчных символов вместо прописных и наоборот — очередная часто встречающаяся ошибка программирования. Переменные формы создаются через один из двух массивов, хранящихся в переменных $HTTP_POST_VARS и $HTTP_GET_VARS. Один из этих массивов будет содержать подробную информацию о всех переменных формы. Выбор используемого массива зависит от метода отправки формы: POST или GET. Например: $green=$HTTP_POST_VARS [‘ green’] В дополнение к переменным, передаваемым из HTML-формы, можно объявлять и использовать свои собственные переменные. Одна из особенностей РНР заключается в том, что переменные не обязательно объявлять прежде, чем их можно будет использовать. Переменная будет создаваться при первом присвоении ей значения. Значения переменным присваиваются при помощи операции присваивания =. $green=0; $black_white=100; Переменным можно присваивать также значения других переменных, например: $green=$black_white; РНР поддерживает следующие типы данных: • Integer (целый) — Используется для целых чисел • Double (двойной точности) — Используется для действительных чисел • String (строковый) — Используется для строк символов • Array (массив) — Используется для хранения нескольких элементов данных одного типа • Object (объект) — Используется для хранения экземпляров классов Tакже в PHP допускается объявление констант. Константы определяются с при помощи функции define: define("TREE", 100); define("GREEN", 10) ; define("SKY", 4) ; Стоит заметить, что все имена констант записываются прописными. Это соглашение заимствовано из языка С и оно упрощает зрительное различение переменных и констант. Соблюдать соглашение вовсе не обязательно, тем не менее, следует помнить, что оно облегчает чтение и работу с кодом. Таблица 1.2 Операции сравнения Ход работы: 1. Скопируйте на Z:\личная папка\web\home\localhost\www каталог Avto c Y:\ЗПО-61\ПОКС\Практические PHP. В дальнейшем используйте папку Avto для сохранения всех файлов работы. 2. Запустите стартовую страницу сайта, набрав в окне браузера путь http://localhost/avto. Просмотрите исходный код страницы. В нижнем колонтитуле допишите свою фамилию, имя и группу. 3. Создайте новый HTML-документ по образцу. Разместите указанные элементы на форме, для выравнивания элементов используйте таблицу: Элементы формы Текстовое поле ввода Свойства Имя: tirecount, oilcount, sparkcount Размер, макс. длина: 3 Поле со списком Имя: find; Значения: a, b, c, d (см рисунок) Кнопка Тип: submit 4. Сохраните с именем orderform.html в папке avto. 5. Для расчета стоимости заказа создайте phpсценарий, в котором: с помощью тегов HTML оформите заголовочную часть (Автозапчасти Вираж, Результаты заказа); создайте короткие имена переменных $tirecount, $oilcount, $sparkcount для сохранения значений из массива $HTTP_POST_VARS; выведите список заказанных запчастей с указанием количества (см. рисунок); рассчитайте и выведите общее количество товара; для расчета итоговой суммы покупки ($totalalamount) объявите, и используйте константы со значениями цены товара: TIREPRICE=1000, OILPRICE=100; SPARKPRICE=110; при выводе итоговой суммы, отформатируйте полученное значение с помощью функции number_format($totalamount, число десятичных знаков); окончательный расчет выполните с учетом надбавки налога с продаж, который составляет 10%; с помощью функции date('H:i, jS F') выведите дату обработки заказа, после строки Результаты заказа. 6. Сохраните с именем processorder.php. 7. Отредактируйте файл orderform.htm, установив в качестве действия формы отправку данных php-сценарию processorder.php методом post. 8. В файле index.html добавьте гиперссылку к 9. Протестируйте работу сайта. для открытия orderform.html.