X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> Интернет магазин - корзина
RayOfLight
RayOfLight
Topic Starter сообщение 11.4.2010, 19:52; Ответить: RayOfLight
Сообщение #1


В общем, надо реализовать пересчет стоимости заказа при изменении количества. В сессии пользователя храню массив с id товара. Сначала хотел JavaScript'ом, но как с помощью него редактировать данные в сессии, не понимаю. Другой способ - пилить кнопку "Пересчитать", по нажатии которой новые количества будут через $_POST передаваться в сессию, но тогда придется пилить форму внутри формы? Подскажите, как это лучше сделать. Привожу код вывода списка заказанных товаров. Код бестолковый.

$action = $_GET['action'];
switch ($action){
    default:    
        echo "<div class='redirect' style='margin:0; padding-top: 7px;'>В корзине ".sizeof($arrgoods)." товаров</div>";
        echo "<div class='text' style='margin-top:0; border-top:0;'>";

        echo "<form action='shop_order.php?action=send' method='post' name='order' onsubmit='return Check()'>";
        echo "<table width='100%' cellspacing='0'>";
        
        $all = 0;
        foreach($arrgoods as $gid => $q){            
            $getgood = mysql_query("select * from `goods` where `id`=$gid");
            $arrg = mysql_fetch_array($getgood);
            $all = $all + ($arrg['price']*$arrgoods[$gid]);
            echo "<tr><td class='order_item'>$lid<a href='shop.php?action=view&id=$gid'><b>".$arrg['name']."</b></a></td>";
            echo "<td class='order_item'><input type='text' size='1' name='q_$gid' value='$q' /> шт.</td>";
            echo "<td class='order_item' style='font-size:12px;'><input type='button' value='Удалить' onclick='top.location.href=\"shop_order.php?action=delete&id=$id\"'/></td>";
            echo "<td class='order_item' style='text-align:right;'><b><label name='sum'>".$arrg['price']."</label></b> у.е.</td></tr>";
        }
        echo "</table>";
        echo "<p style='border-top:2px solid #276100; text-align:right;'><b>Итого: &nbsp;<label id='sum'>$all</label> у.е.</b></p>";
        echo "</div>";
    break;
}


Можно ли напрямую добавлять переменные в массив $_POST, без формы?
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZhukV
ZhukV
сообщение 12.4.2010, 10:37; Ответить: ZhukV
Сообщение #2


(RayOfLight @ 11.4.2010, 22:52) *
Можно ли напрямую добавлять переменные в массив $_POST, без формы?

Впервые такое слышу!!!

В твоем варианте те лучше это будет сделать на аякс оброботчике, тоесть, данные хранятся либо в сесии, либо в куках, и при нажатии на определенную кнопку посылается запрос на пхп, где он обрабатывается и присылает назад ответ.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
RayOfLight
RayOfLight
Topic Starter сообщение 12.4.2010, 15:17; Ответить: RayOfLight
Сообщение #3


Я уже придумал, как сделать: каждому текстовому полю прописать onchange="top.location.href='<page>' ", и уже на ней изменять данные в сессии, а потом редиректом вернуться назад
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZhukV
ZhukV
сообщение 12.4.2010, 15:32; Ответить: ZhukV
Сообщение #4


Ты так себя намного заплутаеш!!!!
Тем более, каждому програмеру нужно учитывать, что в нету висит около 20% юзеров с отключеной явой.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
RayOfLight
RayOfLight
Topic Starter сообщение 12.4.2010, 15:39; Ответить: RayOfLight
Сообщение #5


Ну в крайнем случае можно будет поставить ссылку на страницу с пересчетом
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ZhukV
ZhukV
сообщение 12.4.2010, 16:00; Ответить: ZhukV
Сообщение #6


За стандартом, шаблонизаторы делают это по интересной схеме:
Имеется форма для пересчета, просто с кнопкой и скрытое поле, чтоб проверить на оброботчик. На клик установлен return false, и определенная функция на яве. В таком случае, если ява пахает, то кнопка по форме не переведет, а сработает функция, в противном случае переведет на оброботчик.
Сам обробочик это этот же файл, в которм перехвачивает скрытое поле, чтоб проверить подключать ли чего-то, и если да, то прикрепляею библию.
Таков вариант на даный момент (мое мнение) является самым лучшим, поскольку в любом случае сработает (если верно все прописать)!!!

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Горячая тема (нет новых ответов) Betatransfer.net - прием платежей для HIGH RISK проектов, интернет эквайринг и мерчант онлайн оплат
52 arendator 34149 26.3.2024, 4:43
автор: arendator
Открытая тема (нет новых ответов) Покупаем рекламу на ваших площадка для 2х интернет сервисов
Покупаем статьи для фотохостинга и мониторинга сайтов.
1 AndrePro 1000 25.3.2024, 13:46
автор: Wilkinson
Горячая тема (нет новых ответов) Онлайн магазин качественных аккаунтов
Продажа аккаунтов - соц сети, почтовые, фрихостинг, популярных служб
117 Alanamana 72585 12.3.2024, 19:54
автор: Alanamana
Горячая тема (нет новых ответов) Какие интернет активы вы знаете?
38 metvekot 6875 29.2.2024, 11:18
автор: Skyworker
Открытая тема (нет новых ответов) Администратор (управляющий) вашими интернет проектами
0 Дмитрий1981 864 10.2.2024, 22:56
автор: Дмитрий1981


 



RSS Текстовая версия Сейчас: 29.3.2024, 14:04
Дизайн