Срочно нужно сделать калькулятор как тут www[dot]md-cargo[dot]ru/calc_avia[dot]html
То есть имею Excel файл с таблицей тарифов как на сайте примере внизу, калькулятор должен считать итоговую сумму исходя из данных таблицы (как в примере).
Подскажите в общих чертах как можно подробнее как это проще реализовать (логику самого процесса поэтапно) и какие темы стоить основательно почитать. Возможно порекомендуете какую нибудь литературу.
1. bubanay - 21 Февраля, 2012 - 13:59:05 - перейти к сообщению
2. Zuldek - 21 Февраля, 2012 - 14:13:24 - перейти к сообщению
логика такая:
1.Загружаете экселевский прайс на сайт в виде csv-файла.
2. Обработчик разбирает прайс на параметры и значения.
3. По этим параметрам строит калькулятор.
пример:
товар1;450;350;50;
товар2;500;400;10;
Выводим выпадающий список товаров.
При выборе товара выводим цену за единицу - 450, выводим количество для оптовой скидки - 50, выводим поле для ввода количества. Если количетсво >=50 применяем оптовую цену 350 за единицу и выводим итоговую цену.
1.Загружаете экселевский прайс на сайт в виде csv-файла.
2. Обработчик разбирает прайс на параметры и значения.
3. По этим параметрам строит калькулятор.
пример:
товар1;450;350;50;
товар2;500;400;10;
Выводим выпадающий список товаров.
При выборе товара выводим цену за единицу - 450, выводим количество для оптовой скидки - 50, выводим поле для ввода количества. Если количетсво >=50 применяем оптовую цену 350 за единицу и выводим итоговую цену.
3. DlTA - 21 Февраля, 2012 - 14:16:10 - перейти к сообщению
а сложность то в чем?
данные получили, проверили подставили
в формулу засунули посчитали, вернули
данные получили, проверили подставили
в формулу засунули посчитали, вернули
4. bubanay - 21 Февраля, 2012 - 17:09:39 - перейти к сообщению
Zuldek подскажите что можно почитать по пунктам 2 и 3
DlTA да ясно что все это просто, я где-то примерно так и представлял, но знаний нет, это будит первая работа с масивами
DlTA да ясно что все это просто, я где-то примерно так и представлял, но знаний нет, это будит первая работа с масивами
5. Zuldek - 22 Февраля, 2012 - 14:29:31 - перейти к сообщению
CODE (htmlphp):
скопировать код в буфер обмена
скопировать код в буфер обмена
- <?
- // если пришли данные для подсчета - считаем
- if(isset($_POST['amount'])){
- $sum=((int)$_POST['amount'])>=((int)$_POST['discount_amount'])?((int)$_POST['price_discount']*(int)$_POST['amount']):((int)$_POST['price']*(int)$_POST['amount']);
- }
- // test.csv содержит - 1;450;350;50 где 1 артикуд, 450 цена, 350 оптовая цена, 50 оптовое количество
- $fp = fopen ("test.csv","r");
- while (!feof($fp)){
- //прочитал в массив
- $data[] = fgetcsv($fp, 1000, ";");
- }
- // пишем калькулятор суммы
- ?>
- <html>
- <head>
- <title>calc</title>
- <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
- </head>
- <body>
- <form name="calc" action="#" method="post">
- <input type="text" name="tovar" value="<?=$data[0][0];?>"/><br/>
- <input type="text" name="price" value="<?=$data[0][1];?>"/><br/>
- <input type="text" name="price_discount" value="<?=$data[0][2];?>"/><br/>
- <input type="text" name="discount_amount" value="<?=$data[0][3];?>"/><br/>
- <label>Введите количества товара</label><br/>
- <input type="text" name="amount"/><br/>
- <label>Тоговая цена</label><br/>
- <input type="text" name="sum" value="<? if(isset($sum)) echo $sum;?>"/><br/>
- <input type="submit" value="Посчитать">
- </form>
- </body>
- </html>
Для многострочного прайса дописать не сложно.
upd. исправил ошибку в условном операторе.