Первый сайт на PHP

Крепежи и метизы: http://krepserp.ru/catalog/rym-bolt-din-/ недорого!

 

КАЛЬКУЛЯТОР

Калькулятор для отображения на странице витрины информации о сумме заказа сделан на Javascript. Его текст приводится ниже. Но, так как книга посвящена РНР, а не Javascript, к его командам даны лишь минимально необходимые комментарии. Просто поместите код сценария в тексте web-страницы, набрав его с клавиатуры или отсканировав страницы книги.
В раздел <head> страницы с витриной следует поместить сценарий:

<SCRIPT LANGUAGE="JavaScript">
function calc()
{

В следующей строчке производится задание массива кодов товаров, встречающихся на web-странице и подлежащих учету. В ней должны быть перечислены все встречающиеся на странице коды товаров. Порядок перечисления кодов товаров не важен и не зависит от их порядка следования содержащих их элементов <select...> на самой странице.

tov=new Array("TOV1", "TOV2", "TOV3", "T0V4");

В другой такой же строчке перечисляются цены на эти товары точно в том порядке, в каком перечислялись коды товаров - на одних и тех же порядковых местах должны стоять код и цена, принадлежащие одному и тому же товару.

prc=new Array (100, 200, З00, 400);

Сценарий продолжается...

var kolvo=0;
var stoim=0;
for (n=0; n<tov.length; n++)
{
if (document.mainform(tov[n])!=null)
{
kolvo=kolvo+l*document.mainform(tov[n]).value;
stoim=prc[n]*document.mainform(tov[n]).value+stoim;
mess.innerНТМL="Количество заказанных товаров -"+kolvo+"<br>"+"CTOИMOCTb заказанных товаров -"+stoim;
document.mainform("stoim").value=stoim; document.mainform("kolvo").value=kolvo;
} </SCRIPT>

Вкратце можно сказать, что этот сценарий при своем запуске просматривает значения всех элементов форм на web-странице, имеющих перечисленные в массиве tov имена (а, как вы помните, в этом массиве перечислены коды товаров: т. е. элементы с этими именами - это соответствующие этим товарам выпадающие списки <select...>), и вычисляет сумму этих значений (общее число заказанных товаров) и сумму произведений этих значений на соответствующее каждому коду число из массива ргс - списка цен (т. е. считает общую сумму покупки). Полученные значения помещаются в элементы web-страницы с именем mess (текстовое сообщение), stoim (стоимость заказа), kolvo (количество заказанных единиц товара) (рис. 5.7).

Рис.5.7. Калькулятор стоимости

В каждый тэг <select...>, присутствующий на странице и предназначенный для заказа товара, добавьте команду, предписывающую браузеру выполнять сценарий calc при каждом изменении значения элемента, отображаемого этим тэгом:

<select name=TOV1l onchange=calc ()>
<option value=0>0
...
</select>

В том месте страницы, где вы желаете отображать посетителю сведения о заказе, поместите строчку с элементом <р> или <div>, имеющую идентификатор mess - тот же, что упоминался в сценарии (здесь надо использовать именно параметр id, а не nаmе):

<р align=center id=mess> Информация о заказе появится здесь</р>

Где-нибудь в форме также поставьте два скрытых поля:

<input type=hidden name=stoim value=0>
<input type=hidden name=kolvo value=0>

С помощью этих полей в сценарий-обработчик будут переданы значения стоимости заказа и количества заказанного товара. В результате владелец сайта получит в письме еще и эти сведения.
Чтобы последнее произошло, команду, составляющую текст письма в сценарии на странице-обработчике формы, измените так, чтобы она включала в этот текст и значения переменных из скрытых полей:

$zak="C адреса $email от заказчика с контактными данными $contact пришла заявка на приобретение товара: \n$zак\пКоличество заказанных товаров -$kolvo\n О6щая стоимость заказа - $stoim";

 
Назад Начало Вперед