Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.12.2013, 19:30   #1
Batyabest
 
Регистрация: 30.11.2013
Сообщений: 5
По умолчанию Как оформить заявку товаров?

Здравствуйте.
Есть такой вот код:
Код HTML:
<div style="width: 400px;">     
<p>Выбираем цвет стола</p>
<table>
	<tr>
		<td><img src="/images/venge.jpg" class="material"></td>
		<td><span>Венге</span></td>
		<td><input type="text" name="quantity" value="" size="5"><input type="button" value="Заказать"></td>
	</tr>
	<tr>
		<td><img src="/images/orekh.jpg" class="material"></td>
		<td><span>Орех гварнери</span></td>
		<td><input type="text" name="quantity" value="" size="5"><input type="button" value="Заказать"></td>
	</tr>
	<tr>
		<td><img src="/images/klen.jpg" class="material"></td>
		<td><span>Клен медисон</span></td>
		<td><input type="text" name="quantity" value="" size="5"><input type="button" value="Заказать"></td>
	</tr>
</table>
<div id="zayavka"></div><input type="button" value="Оформить заявку"><br>
<input type="checkbox" name="sborka"> <span style="font-size: 16px; font-weight: 400;">Сборка специалистом нашего интернет-магазина</span>
	</div>
Как реализовать следующий функционал: Пользователь вводит количество товара, жмет заказать, опа - появилась строка с таким заказом снизу, пользователь выбрал еще другого товара столько-то штук, нажал заказать - опа еще строка добавилась. Принцип корзины товаров, только тут же на странице. Все добавляться должно в блок <div id="zayavka"></div>.
В итоге, пользователь жмет Оформить заказ и открывается окно с обратной связью, где нужно ввести имя телефон и адрес, а параметры заказа уже передались туда в фоне.
Batyabest вне форума Ответить с цитированием
Старый 06.12.2013, 23:05   #2
Batyabest
 
Регистрация: 30.11.2013
Сообщений: 5
По умолчанию

Попросив помощи у знающих людей, часть вопроса реализовалась.
Теперь у меня такой код:
Код:
<div style="width: 400px;">     
<p>Выбираем цвет стола</p>
<table id="data">
	<tr>
		<td><img src="/images/venge.jpg" class="material"></td>
		<td><span>Венге</span></td>
		<td><input type="text" name="quantity" value="" size="5"><input type="button" value="Заказать"></td>
	</tr>
	<tr>
		<td><img src="/images/orekh.jpg" class="material"></td>
		<td><span>Орех гварнери</span></td>
		<td><input type="text" name="quantity" value="" size="5"><input type="button" value="Заказать"></td>
	</tr>
	<tr>
		<td><img src="/images/klen.jpg" class="material"></td>
		<td><span>Клен медисон</span></td>
		<td><input type="text" name="quantity" value="" size="5"><input type="button" value="Заказать"></td>
	</tr>
</table>
<div id="zayavka"></div><input type="button" value="Оформить заявку"><br>
<input type="checkbox" name="sborka"> <span style="font-size: 16px; font-weight: 400;">Сборка специалистом нашего интернет-магазина</span>
	</div>
<script>
var d = document;
window.onload = function () {
	d.getElementById("data").onclick = function(e) {
		var target = e && e.target || event.srcElement;
		if (target.type == "button" && target.value == "Заказать") {
			var value = target.previousSibling.value;
			//alert(target.parentNode.previousSibling.previousSibling.childNodes[0].childNodes[0].nodeValue);
			var ua = navigator.userAgent;
			var elm = ua.search(/MSIE/) > -1 ? target.parentNode.previousSibling.childNodes[0].nodeValue : target.parentNode.previousSibling.previousSibling.childNodes[0].childNodes[0].nodeValue;
			var div = d.createElement("div");
			var span = d.createElement("span");
			span.setAttribute("style", "color: red");
			span.appendChild(d.createTextNode(value));
			div.appendChild(d.createTextNode(elm+": "+value));
			//div.appendChild(span);
			var input = d.createElement("input");
			input.setAttribute("type", "button");
			input.setAttribute("value", "Отменить");
			input.onclick = function () { d.getElementById("zayavka").removeChild(this.parentNode); };
			div.appendChild(input);
			d.getElementById("zayavka").appendChild(div);
		}
	}
}
</script>
Как теперь сделать так, чтобы при нажатии на кнопку Оформить заказ открывалось модальное окно, в котором можно ввести имя телефон и потом отправить все это на почту. Причем в эту же форму при нажатии на кнопку Оформить заказ должны передаться данные заказа, сформированные на 1 этапе.
Batyabest вне форума Ответить с цитированием
Старый 06.12.2013, 23:32   #3
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

PHP здесь каким боком?
По сабжу, если нет знания хотя бы основ javascript – то никак, разве что выпросить решение на форумах.
Здесь это не особо прокатывает, насколько мне известно.
Andkorol вне форума Ответить с цитированием
Старый 06.12.2013, 23:56   #4
Batyabest
 
Регистрация: 30.11.2013
Сообщений: 5
По умолчанию

Цитата:
Сообщение от Andkorol Посмотреть сообщение
PHP здесь каким боком?
По сабжу, если нет знания хотя бы основ javascript – то никак, разве что выпросить решение на форумах.
Здесь это не особо прокатывает, насколько мне известно.
Хотел бы узнать, все решение можно сделать только га JS или обязательно PHP нужен (ну там например отправка письма или еще чего).
Batyabest вне форума Ответить с цитированием
Старый 07.12.2013, 00:06   #5
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

PHP может быть использован на этапе сохранения данных о заказе и отправки писем-уведомлений – но до этого пока еще далеко.
Andkorol вне форума Ответить с цитированием
Старый 07.12.2013, 10:23   #6
Batyabest
 
Регистрация: 30.11.2013
Сообщений: 5
По умолчанию

Цитата:
Сообщение от Andkorol Посмотреть сообщение
PHP может быть использован на этапе сохранения данных о заказе и отправки писем-уведомлений – но до этого пока еще далеко.
Почему же далеко? при нажатии на кнопки Заказать снизу появляется строки заказа, значит, теперь нужно их обрабатывать, а как?
Batyabest вне форума Ответить с цитированием
Старый 07.12.2013, 10:43   #7
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Цитата:
Сообщение от Batyabest Посмотреть сообщение
Почему же далеко? при нажатии на кнопки Заказать снизу появляется строки заказа, значит, теперь нужно их обрабатывать, а как?
Можно при помощи js собирать выбранные позиции и их количество в скрытую форму, которая будет отправлена по итогу в php-обработчик после нажатия на кнопку "Оформить заказ".
Это если все позиции находятся на одной странице, либо если используется AJAX-навигация для подгрузки новых позиций товаров на текущую страницу.
Andkorol вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как оформить класс? hmr5 C++ Builder 0 27.07.2011 17:54
Чай-кофе и заявку из Oracle динамически. Nexta_s PHP 2 21.10.2010 02:32
как оформить алгоритм? MyLastHit Общие вопросы Delphi 13 03.09.2010 00:40
Сделать заявку Romuald Microsoft Office Excel 2 04.11.2008 14:45
оформить как функцию arturka Помощь студентам 11 20.06.2008 23:41