|
|
|
| Не подскажите, где можно содрать корзину на JavaScript , чтоб сумму считала и мегабайты (при достижении 800мегабайт показывало "1 диск". при 1600 два диска ну и так далее. исли 900мегабайт 1диск и 100мегабайт). Сумму считало так 1диск 50рублей (60,,,,,,,). Может есть готовый магазин на JavaScript.
JavaScript я выбрал за то что при добавлении товара в корзину не перерисовывается вся страница, что очень удобно. | |
|
|
|
|
|
|
|
для: tetris-x
(22.06.2005 в 16:52)
| | Вот туда родимый и отправляйся: http://www.softtime.ru/forum/index.php?id_forum=4, а если считаешь, что сможешь магазин на JS написать, то мне тебя искренне жаль!!!
PS если грубовато, извиняюсь, я только что с форума на phpclub - там за подобные темы ... | |
|
|
|
|
|
|
|
для: $OMEGA
(22.06.2005 в 17:01)
| | PS если грубовато, извиняюсь, я только что с форума на phpclub - там за подобные темы ...
Да не стоит извиняться. я сам так общаюсь.(с сарказмом)
[i]магазин на JS написать, то мне тебя искренне жаль!!!
А в чем подвох вроде удобно все на "статичной странице". без лишних перезагрузок?
[/i] | |
|
|
|
|
|
|
|
для: tetris-x
(22.06.2005 в 17:48)
| | Я постараюсь ответить.
В магазине все не должно быть на одной странице, т.е. должны быть "отделы" как в обычном магазине. Все отделы на одну страницу пихать глупо, а если их делать на разных страницах, то какой тут может быть JavScript. Это только один минус... | |
|
|
|
|
 5.3 Кб |
|
|
для: Евгений Петров
(22.06.2005 в 17:55)
| | А что за технология используется в
http://www.ozon.ru/context/dvd_catalog_list/catalog/1072014/
Там на против каждого товара есть интересная корзина, как она реализована.
Вот посмотри файл. 5килобайт | |
|
|
|
|
|
|
|
для: tetris-x
(22.06.2005 в 18:19)
| | А при чем их корзина к JavaScript?
Ты скрипт можешь и в php файлах использовать, и там именно так и сделано.
При нажатии на кнопку "в корзину" новое окно php файла в котором при загрузке скриптом подстраивается внешний вид, а код php обрабатывает заказ. У тебя ведь после заказа нигде не появляется кол-во заказанных товаров кроме самого этого окна, значит они в базу добавляются и при открытии этого окна считываются, а это брат PHP + MySQL. | |
|
|
|
|
|
|
|
для: tetris-x
(22.06.2005 в 18:19)
| | Ну и? Нажимаешь на корзину и перезагружается страница. | |
|
|
|
|
|
|
|
для: tetris-x
(22.06.2005 в 17:48)
| | Ладно категоии - весь товар можно на одной длиннЮЮЮЮЮЮщей странице выложить! Но с помощью JS - не устся сохранить заказ, разве, что на машине клиента! Не нравится перезагрузка - используй модалки или фреймы. | |
|
|
|
|
|
|
|
для: $OMEGA
(22.06.2005 в 18:43)
| | Я пытался спросить как сделать в коде усовершенствование при нажатии на сылку чтобы открывалось окошко, (там непосредственно форма заказа, цены) а там табличка ,но никто видно не знает. Ну вот спрашиваюк как сделать так чтобы при нажатии на это
<input name="cart_{$product_info.productID}" type="image" src="images/cart_small.gif" alt="{$smarty.const.ADD_TO_CART_STRING}">
Происходит передача данных, пользователь оповещается об этом и при этом страничка не перерисовывается.
Есть хоть какие нибуть идеи? Видимо нет у меня тоже.
|
<td width="100" align=center valign=middle bgcolor="#F2F2F2">{* arr
to cart *}
<form action="index.php?categoryID={$product_info.categoryID}&prdID={$product_info.productID}" method=post
name="HiddenFieldsForm_{$product_info.productID}" >
<div align="center">{if ( $smarty.const.CONF_SHOW_ADD2CART eq 1
) && ( $smarty.const.CONF_CHECKSTOCK==0 || $product_info.in_stock
> 0 ) }
<input name="cart_{$product_info.productID}" type="image" src="images/cart_small.gif" alt="{$smarty.const.ADD_TO_CART_STRING}">
{else} {/if} {counter name='select_counter_hidden' start=0
skip=1 print=false} {section name=i loop=$product_info.product_extra}
{if $product_info.product_extra[i].option_type eq 1} {section
name=s loop=$product_info.product_extra[i].option_show_times}
<input type=hidden
name='option_select_hidden_{counter name=select_counter_hidden}_{$product_info.productID}'
value='1'>
{/section} {/if} {/section} </div>
</form>
</td>
|
| |
|
|
|
|
|
|
|
для: tetris-x
(22.06.2005 в 19:32)
| | Зачем жать на ссылку? Можно сделать CheckBox'ы ими отмечать выбранные товары, а потом по нажатии на кнопку всеэто заносить в корзину. | |
|
|
|
|
|
|
|
для: Евгений Петров
(22.06.2005 в 20:07)
| | Можно по подробней как сотворить чудо, с CheckBox'сами | |
|
|
|
|
|
|
|
для: tetris-x
(22.06.2005 в 20:24)
| | Ну делаем форму вместо кнопок с надписью "корзина" ставим чекбоксы (один чекбокс один товар)
<form action="page.php" method=post>
<input type="checkbox" name="tovar1">Товар №1<br>
<input type="checkbox" name="tovar2">Товар №2<br>
<input type="checkbox" name="tovar3">Товар №3<br>
<input type=submit value="Добавить выбранное">
</form>
|
А в сценарии page.php обрабатываем выбранные товары и добавляем их в корзину. | |
|
|
|
|
|
|
|
для: tetris-x
(22.06.2005 в 20:24)
| | Зайди сюда http://www.mp3search.ru/album.html?id=3009 там что то подобное тому что я описал. Напротив каждой песни чекбокс и внизу кнопка "Заказать все выбранные" | |
|
|
|
|
|
|
|
для: Евгений Петров
(22.06.2005 в 20:38)
| | Именно то что я хотел, теперь буду думать как все это воплотить в жизнь, спасибо за идею Евгений. | |
|
|
|
|
|
|
|
для: tetris-x
(22.06.2005 в 21:17)
| | Я могу прислать пример магазина, точнее как его сделать, но архив весит около 800 kb и сюда я его выложить не могу. Если надо отправлю на мыло. | |
|
|
|
|
|
|
|
для: Евгений Петров
(22.06.2005 в 21:27)
| | Да очень хотелось бы, я в долгу не останусь.
tetris-x@rambler.ru | |
|
|
|
|
|
|
|
для: tetris-x
(22.06.2005 в 21:41)
| | Отправляю... | |
|
|
|
|
|
|
|
для: tetris-x
(22.06.2005 в 21:41)
| | Кажись отправил :) | |
|
|
|
|
|
|
|
для: Евгений Петров
(23.06.2005 в 01:10)
| | Прямо щас почту проверяю, чувствую оно самое ко мне ползет.
Да свалится на тебя благодать в огромном количестве чтоб на тысячу жизней хватило. | |
|
|
|
|
|
|
|
для: tetris-x
(22.06.2005 в 19:32)
| | Для того, чтобы при нажатии на это открывалось новое окно
<input name="cart_{$product_info.productID}" type="image" src="images/cart_small.gif" alt="{$smarty.const.ADD_TO_CART_STRING}">
|
нужно вставить инструкции JavaScript по открытию этого окна.
<input name="cart_{$product_info.productID}" type="image" src="images/cart_small.gif" alt="{$smarty.const.ADD_TO_CART_STRING}" onclick="opennewwin({$product_info.productID}); return false">
|
Здесь по событию нажатия на кнопке (onclick) вызывается функция JavaScript с именем opennewwin(). Предварительно, нужно эту функцию написать.
<script language="JavaScript">
function opennewwin(param)
{
window.open("page.php?productID="+param,"", "top=100,left=100,width=500");
}
</script>
|
Здесь вы открываете новое окна браузера со страницей page.php и передаете ей в качестве параметра идентификатор выбранного товара (productID).
> чтобы открывалось окошко, (там непосредственно форма заказа, цены)
И вот на странице page.php уже и должны находиться форма заказа и цены. | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(23.06.2005 в 04:51)
| | В коде есть одна строчка за которую можно зацепиться:
<form action="index.php?categoryID={$product_info.categoryID}&prdID={$product_info.productID}" method=post
name="HiddenFieldsForm_{$product_info.productID}" target="_blank" >
Вот она: target="_blank" ,можноли как нибуть поменять это значение на всплывающее окошко, предыдущий способ не сработал.
То что идет за тегом action и есть так называемая корзину с кучей хлама, которую я конечно разгребу.
[поправлено модератором] | |
|
|
|
|
|
|
|
для: tetris-x
(23.06.2005 в 09:33)
| | >То что идет за тегом action и есть так называемая корзину…
> можноли как нибуть поменять это значение на всплывающее окошко
target="_blank"
Но у вас ведь корзина и так открывается в новом окне. Зачем вам менять одно окно на другое?
Или же нужно именно всплывающее окошко, открываемое методами JavaScript. Нет, здесь поменять нельзя. Нужно работать с кодом, который я прикладывал выше.
>предыдущий способ не сработал.
Ошибки какие-нибудь показывает? | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(24.06.2005 в 05:53)
| | Вот по вашему совету вот что получилось:
как открывал зараза так и открывает по старому, а нужно сплывающее окошко, На новом окошке не подходит ввиду неудобности.
--------------------------------------------------------------->
<td width="50" align=right valign=top> {* arr to cart *}
<form action="index.php?categoryID={$product_info.categoryID}&prdID={$product_info.productID}" method=post
name="HiddenFieldsForm_{$product_info.productID}" >
{if ( $smarty.const.CONF_SHOW_ADD2CART eq 1 ) && ( $smarty.const.CONF_CHECKSTOCK==0
|| $product_info.in_stock > 0 ) }
<input name="cart_{$product_info.productID}" type="image" src="images/cart_small.gif" alt="{$smarty.const.ADD_TO_CART_STRING}" onclick="opennewwin({$product_info.productID}); return false">
{literal}<script language="JavaScript">
function opennewwin(param)
{
window.open(index.php?categoryID={$product_info.categoryID}&prdID={$product_info.productID}, "top=100,left=100,width=500");
}
</script>{/literal}{else} {/if} {counter name='select_counter_hidden' start=0
skip=1 print=false} {section name=i loop=$product_info.product_extra}
{if $product_info.product_extra[i].option_type eq 1} {section name=s
loop=$product_info.product_extra[i].option_show_times}
<input type=hidden
name='option_select_hidden_{counter name=select_counter_hidden}_{$product_info.productID}'
value='1'>
{/section} {/if} {/section} </form></td> | |
|
|
|
|
|
|
|
для: tetris-x
(24.06.2005 в 13:17)
| | Вы неверно переписали JavaScript
Должно быть написано так:
<script language="JavaScript">
function opennewwin(param)
{
window.open("index.php?categoryID="+{$product_info.categoryID}
+"&prdID="+{$product_info.productID},"","top=100,left=100,width=500");
</script>
|
Обратите внимание на запятые и кавычки. | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(25.06.2005 в 06:25)
| | Тот-же самый результат:
может там чего лишнего написано ?
<td width="50" align=right valign=top> {* arr to cart *}
<form action="index.php?categoryID={$product_info.categoryID}&prdID={$product_info.productID}" method=post
name="HiddenFieldsForm_{$product_info.productID}" >
{if ( $smarty.const.CONF_SHOW_ADD2CART eq 1 ) && ( $smarty.const.CONF_CHECKSTOCK==0
|| $product_info.in_stock > 0 ) }
<input name="cart_{$product_info.productID}" type="image" src="images/cart_small.gif" alt="{$smarty.const.ADD_TO_CART_STRING}" onclick="opennewwin({$product_info.productID}); return false">
{literal}<script language="JavaScript">
function opennewwin(param)
{
window.open("index.php?categoryID="+{$product_info.categoryID}
+"&prdID="+{$product_info.productID},"","top=100,left=100,width=500");
</script>{/literal}{else} {/if} {counter name='select_counter_hidden' start=0
skip=1 print=false} {section name=i loop=$product_info.product_extra}
{if $product_info.product_extra[i].option_type eq 1} {section name=s
loop=$product_info.product_extra[i].option_show_times}
<input type=hidden
name='option_select_hidden_{counter name=select_counter_hidden}_{$product_info.productID}'
value='1'>
{/section} {/if} {/section} </form></td>
|
| |
|
|
|
|
|
|
|
для: tetris-x
(25.06.2005 в 06:49)
| | А ошибки какие-нибудь выдает?
Дело в том, что я не могу протестировать ваш код с шаблонами...
В качестве проверки, перепишите вот так.
function opennewwin(param)
{
alert("JavaScript работает");
}
|
Тогда будет видно - вызывается ли вообще эта функция. | |
|
|
|
|
|
|
|
для: glsv (Дизайнер)
(25.06.2005 в 07:15)
| | Да функция вызывается.
Скажи а нет ли подробного учебника написания магазина, пока разбираю один второй не помещает, с наваротами и всякими прибамбасами (магазин). | |
|
|
|
|
автор: новичек (25.06.2005 в 08:28) |
|
|
для: tetris-x
(25.06.2005 в 07:59)
| | а вот если использовать такой вариант с чекбоксами когда несколько страниц и пользователь идет по ним и отмечает что ему надо, а потом нажимает кнопку формы, как сделать чтобы запомнилось что он отметил на предыдущих страницах ? | |
|
|
|