Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Дайте совет по сайту инет-магу 
:(
    Опции темы
Rusman
Дата 20.1.2009, 10:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 312
Регистрация: 4.5.2006
Где: Пермь

Репутация: нет
Всего: нет



Здравствуйте!

Хотелось бы вас попросить посоветовать мне как лучше сделать.
Я сделал инет магазин. Но не предусматрел 1 момент, при нажатии кнопки в корзину - в корзину добавлчяется данные о цене и товаре, но забыл сделать чтоб можно было выбрать количество товаров.
Ссылка на доавбление следующая (к приеру):
 
Код

1ig/addcart.php?price=19&idprod=38&idshop=6
 

Я хочу сделать так чтоб при нажатии на корзину дополнилось к этой ссылке еще &count=ЧИСЛО

Но сделать хочу так: нажимаем на корзину и выходит окно с вводом поля (думаю какое нибдь с помощью java script  (как сделать не знаю)), туда пишем кол-во товара и далее надимаем ОК и к скрипту add.php уже приходит ссылка 1ig/addcart.php?price=19&idprod=38&idshop=6&count=ЧИСЛО

Заранее большое спасибо!
PM MAIL ICQ Skype   Вверх
bars80080
Дата 20.1.2009, 11:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 71
Всего: 315



много не понятного. корзина держится на сессиях, так понимаю. как она выглядит в реале?
как оно обычно реализовывается? сверху болтается что-то типа рисунка корзины и обычно отображается общая сумма набранных товаров. жмём на неё и открывается слой скажем с таблицей. каждая строчка товар - его цена, количество, сумма и кнопка удаляющая товар из корзины. остаётся вместо циферок количества поставить тесктовое поле input, в котором можно было бы изменить количество, а внизу кнопку - "сохранить изменения". сама корзина - получается в форме

если у тебя какая-то другая реализация - опиши полнее
PM MAIL WWW   Вверх
boombick
Дата 20.1.2009, 11:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 305
Регистрация: 20.4.2005
Где: Moscow, Russia

Репутация: 2
Всего: 9



Имеет место быть момент удобства использования..
При просмотре магазина пользователь просто отмечает нужные ему товары, а уж количество, равно как и способ оплаты и доставке лучше определять при оформлении заказа. ИМХО, конечно же


--------------------
Все вышесказанное - имхо, и на истину в последней инстанции не претендует
------
UNIX and other
PM MAIL WWW ICQ   Вверх
Rusman
Дата 21.1.2009, 12:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 312
Регистрация: 4.5.2006
Где: Пермь

Репутация: нет
Всего: нет



Объесняю подробнее. Вот есть страница с товаром. На ней указаны несколь цен одного и того же товара. К каждой цене присваивается ссылка вида:
Код

сайт/addcart.php?price=ЦЕНА&idprod=1&idshop=НОМЕР


В данный момент у меня просто при нажатии на цену отправляются данные на addcart она обрабатывает и заносит в корзину.
И я когда это делал совсем забыл про кол-во товара.
Ща хоче подделать. Хочу сделать так чтоб при нажатии на цену выходило окно какое нибудь, далее в это окошке написано: Введите количество товара. Вводим нажимаем ОК. Окно закрывается и данные передаются уже передаются в основном окне вида:
Код

сайт/addcart.php?price=ЦЕНА&idprod=1&idshop=НОМЕР&count=ЧИСЛО

PM MAIL ICQ Skype   Вверх
ksnk
Дата 21.1.2009, 12:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



Цитата

На ней указаны несколь цен одного и того же товара

O! smile 

К каждой цене присобачивается input для ввода количества. При клике JavaScript'ом ищем этот инпут и модифицируем ссылку. Лучше посылать такие ссылки Ajax'ом. Меньше плохих слов юзер скажет, когда будет скроллировать список товаров опять на нужную позицию. Вот только нужно побеспокоиться об изменени записи о корзине на этой страничке...





--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
Rusman
Дата 21.1.2009, 12:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 312
Регистрация: 4.5.2006
Где: Пермь

Репутация: нет
Всего: нет



Цитата(ksnk @  21.1.2009,  12:30 Найти цитируемый пост)
К каждой цене присобачивается input для ввода количества. При клике JavaScript'ом ищем этот инпут и модифицируем ссылку. Лучше посылать такие ссылки Ajax'ом. Меньше плохих слов юзер скажет, когда будет скроллировать список товаров опять на нужную позицию. Вот только нужно побеспокоиться об изменени записи о корзине на этой страничке...


Не подскажете как именно это реализовать?  smile 
PM MAIL ICQ Skype   Вверх
ksnk
Дата 21.1.2009, 13:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



Rusman, Ajax - слишком длинное слово, чтобы проговаривать его с самого начала. На jQuery такое может выглядеть примерно вот так
Код

<a href="сайт/addcart.php?price=12345&idprod=1&idshop=5467" class="ajax">Супер пупер товар</a>
<input type="text"> <!-- скока вешать граммов -->

Принципиальным моментом вяляется то, что инпут располагается после ссылки в том-же блоке, так как этот момент используется далее.
Код

$(function(){
  $('.ajax').click(function(){
     var val=$(this).next('input').val()||1; // вот в этом месте используется
     this.href=this.href.replace(/&count=\d*?/,'')+('&count='+val);
  })
})


В принципе, на этом можно бы и остановиться, но если нужен Ajax, то примерно так

Код

$(function(){
  $('.ajax').click(function(){
     var val=$(this).next('input').val()||1; // вот в этом месте используется
     $.post(this.href.replace(/&count=\d*?/,'')+('&count='+val),function(data){

    // тут из полученных с сервера данных нужно бы выковырять новый текст для корзинки...
         $('#basket').html(data.basket)

     });
     return false; // обязательно, чтобы перехода не было
  })
})


Добавлено @ 13:09
Писано на коленке, в регулярке , возможно, проврался... :-(

Это сообщение отредактировал(а) ksnk - 21.1.2009, 13:11


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
Rusman
Дата 21.1.2009, 13:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 312
Регистрация: 4.5.2006
Где: Пермь

Репутация: нет
Всего: нет



ksnk, большое  спасибо проверю щас )
PM MAIL ICQ Skype   Вверх
bars80080
Дата 21.1.2009, 14:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 71
Всего: 315



ksnk, а не проще:

Код

<script>
function setcol(x) {
    var per = prompt('сколько?','1');
    window.location = x + '&count=' + per;
}
</script>
<a href="javascript:void(0);" onclick="setcol('сайт/addcart.php?price=ЦЕНА&idprod=1&idshop=НОМЕР'); return false;">выбрать</a>
?

Добавлено через 2 минуты и 20 секунд
причём даже лучше усовершенствовать

Код

<script>
function setcol(A,B,C) {
    var per = prompt('сколько?','1');
    window.location = 'сайт/addcart.php?price=' + A + '&idprod=' + B + '&idshop=' + C + '&count=' + per;
}
</script>
<a href="javascript:void(0);" onclick="setcol(ЦЕНА,1,НОМЕР); return false;">выбрать</a>

PM MAIL WWW   Вверх
ksnk
Дата 21.1.2009, 15:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



bars80080, Неее! Только не prompt, иначе IE7-й будет допытываться каждый раз - "а вот с этой странички какие-то гады хотят спросить какую-то очередную фигню..., разрешить им или послать.?". Так и юзера потерять недолго.

К тому-же обязывать юзера вводить что-то - не очень корректно.

Еще мысль... А достаточно ли умно выводить ссылками "добавить в корзину"? Если представить себе, что какой-то поисковик решил такую страничку проиндексировать, то так и не долго и моск паламать... сервер уронить...


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
bars80080
Дата 21.1.2009, 16:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 71
Всего: 315



Цитата(ksnk @  21.1.2009,  14:27 Найти цитируемый пост)
Только не prompt, иначе IE7-й будет допытываться каждый раз - "а вот с этой странички какие-то гады хотят спросить какую-то очередную фигню..., разрешить им или послать.?". Так и юзера потерять недолго.

ну, не знаю, никогда не замечал. но альтернативную форму сделать не сложно

а на счёт того, как лучше, то это уже отдельный вопрос и имхо, решать его лучше на js целиком. 
в моём варианте ссылки не обладают самой ссылкой
PM MAIL WWW   Вверх
ksnk
Дата 21.1.2009, 16:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 96
Всего: 386



bars80080
Цитата

ну, не знаю, никогда не замечал

Да ну? Нужно просто вернуть опции IE для интернета в дефолтное значение
option ->Security->interner поставить medium-high, как оно по умолчанию настроено...
Сразу отучает от использования промптов  smile 




--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
bars80080
Дата 21.1.2009, 18:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 71
Всего: 315



ну, он у меня по дефолту вообще на всё ругался, даже на обычные скрипты
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1061 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.