|
|
|
| Вот исходный код страницы:
<?php
session_start();
$OrderNo = $_SESSION[OrderNo];
$OrderDate = date('n/d/y');
if ($_POST[BuyButton]=="В корзину")
{
$OrderItem = $_GET[OrderItem];
$conn2 = odbc_connect("meshoc", "", "");
$sqlCart = "SELECT OrderNo,OrderItem FROM blocnot WHERE OrderNo = '$OrderNo'";
$rsCart = odbc_exec($conn2,$sqlCart);
while ($row = odbc_fetch_array($rsCart))
{
if ($row[OrderNo] == $OrderNo && $row[OrderItem] == $OrderItem)
{
$update = true;
}
}
if (!$update)
{
$sqlInsert = "INSERT INTO blocnot (OrderNo,OrderItem,OrderDate,OrderQuantity) Values ('$OrderNo', '$OrderItem', '$OrderDate', 1)";
$rsInsert = odbc_exec($conn2,$sqlInsert);
}
else
{
$sqlUpdate = "UPDATE blocnot SET OrderQuantity = OrderQuantity + 1 WHERE OrderNo ='$OrderNo' AND
OrderItem = '$OrderItem'";
$rsUpdate = odbc_exec($conn2,$sqlUpdate);
}
odbc_close($conn2);
}
?>
<?php header('Content-type: text/html; charset=windows-1251');?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head><style type="text/css"><!--
body{margin:0px;padding:0px;}
-->
</style>
<title>Уход за волосами</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<meta http-equiv="Content-Style-Type" content="text/css">
<meta name="keywords" content="ключевые слова для поисковиков">
<meta name="description" content="описать коротко о чем сайт">
<link href="cascad.css" rel="stylesheet" type="text/css">
<link rel="SHORTCUT ICON" href="z/ico5.bmp" type="image/x-icon">
<script language="javascript">
function OverMouse(button)
{
button.style.backgroundColor="lightgreen"
button.style.color='darkgreen'
button.style.cursor='hand'
}
function OutMouse(button)
{
button.style.backgroundColor="seagreen"
button.style.color='white'
}
</script>
</head>
<body>
<table border="0" cellspacing="0" cellpadding="10" align="center" bgcolor="#FAF5F0">
<tr>
<td colspan="2"></td>
</tr>
<tr>
<td><hr><img src="uhodzavolosami/1.jpg" align="left" style="margin-right:20px;" alt="product" height="200" width="180"><br>
<h4> Питательный шампунь</h4>
<form method="post" action="?OrderItem=0043">
<input type="submit" class="buttonL" name="BuyButton" value="В корзину"
onMouseOver="OverMouse(this)"; onMouseOut="OutMouse(this)">
</form>
<font color="red"> <b> 0.00 RUB</b></font>
  <a class="return" href="crasota.php">nazat</a>
</td>
<td height="" width="200"></td>
</tr>
<tr>
<td><hr><img src="uhodzavolosami/2.jpg" align="left" style="margin-right:20px;" alt="product" height="200" width="180"><br>
<h4> Увлажняющий кондиционер</h4>
<form method="post" action="?OrderItem=0044">
<input type="submit" class="buttonL" name="BuyButton" value="В корзину"
onMouseOver="OverMouse(this)"; onMouseOut="OutMouse(this)">
</form>
<font color="red"> <b> 0.00 RUB</b></font>
  <a class="return" href="crasota.php">nazat</a>
</td>
<td></td>
</tr>
<tr>
<td><hr><img src="uhodzavolosami/3.jpg" align="left" style="margin-right:20px;" alt="product" height="200" width="180"><br>
<h4> Шампунь 2-в-1</h4>
<form method="post" action="?OrderItem=0045">
<input type="submit" class="buttonL" name="BuyButton" value="В корзину"
onMouseOver="OverMouse(this)"; onMouseOut="OutMouse(this)">
</form>
<font color="red"> <b> 0.00 RUB</b></font>
  <a class="return" href="crasota.php">nazat</a>
</td>
<td></td>
</tr>
</table>
</body>
|
Когда я нажимаю кнопку "В корзину" посылается переменная "OrderItem" на обработку в php сценарии, от туда данные записываются в базу данных. При этом перезагружается страница, если после этого отменить действие при помощи кнопки браузера то он посылает еще одну переменную
"OrderItem" на обработку в результате чего в корзину отправляться 2 товара.
Подскажите пожалуйста как сделать так чтоб при нажатие кнопки "В корзину" страница не перегружалась а товар добавлялся в корзину.
Заранее спасибо! | |
|
|
|
|
|
|
|
для: alex1111
(07.01.2012 в 22:35)
| | Попробуйте делать редирект на страницу с формой или на любую другую подходящую страницу, тогда не должны повторно добавляться данные в базу данных.
чтобы обойтись без перезагрузки страницы используйте ajax | |
|
|
|
|
|
|
|
для: Slo_Nik
(07.01.2012 в 23:13)
| | Спасибо. Приступил к изучению ajax. Оказывается там не все так просто. | |
|
|
|
|
|
|
|
для: alex1111
(08.01.2012 в 16:28)
| | Уже когда имеется смесь двух технологий, не просто.
HTML + CSS
PHP + HTML
JavaScript + HTML
| а когда таких технологий объединяется 3-4, а на заднем плане маячит пятая и шестая, все становится совершенно не просто. | |
|
|
|
|
|
|
|
для: cheops
(08.01.2012 в 16:32)
| | не обращайтесь к jquery, если не хотите запутться окончательно. | |
|
|
|
|
|
|
|
для: elenaki
(08.01.2012 в 17:38)
| | Не знай... все ж эта библиотека более логично спроектирована и хотя бы пытается себя вести одинаково во всех браузерах в отличие от винигрета различных JavaScript-реализаций. Все-таки следует на неё ориентироваться, может так статься... что через пару поколений браузеров, это будет полноценный язык, вшитый в сам браузер. Мне покрайней мере пока такой тренд видится. | |
|
|
|
|
|
|
|
для: cheops
(08.01.2012 в 18:05)
| | а мне надоело разбирать конфликты между разными версиями. ради 5 строчек кода, которые нужны, нафик тянуть всю библиотеку. | |
|
|
|
|
|
|
|
для: elenaki
(08.01.2012 в 18:08)
| | Да есть такое дело, но конфликты уйдут со временем, не будет бесконечного взрывного роста. Когда версии устаканятся, библиотека скорее всего будет встроена в браузер и тянуть ничего не придется. Недостатки есть, но они решаемы и лечатся временем. Вот если Smarty имеет фундаментальные недостатки, которые не исправить, то в случае jQuery - это скорее болезни роста, еще пару лет и их не будет, а будет зубастая жизнеспособная технология.
PS Нутром чую, что только расти будет jQuery (очень удачно подобран интерфейс к декларативной задаче и вообще к DOM), поэтому лучше начинать любить эту библиотеку :))), какой бы ужасной она не казалась на сегодняшний день. Я напомню, что DirectX и C# в первых версиях тоже не блистали, а сейчас ого-го... | |
|
|
|
|
|
|
|
для: alex1111
(08.01.2012 в 16:28)
| | обратитесь к jquery и его возможностям для работы с технологией ajax, я думаю, что будет полегче разобраться. | |
|
|
|
|
|
|
|
для: Slo_Nik
(08.01.2012 в 16:33)
| | Как только разберусь обязательно напишу. Надеюсь... | |
|
|
|
|
|
|
|
для: alex1111
(09.01.2012 в 19:20)
| | Наконец-то разобрался. Не без помощи добрых людей этого форума и jQuery. Работать с ней очень легко если изучить досконально. | |
|
|
|
|
|
|
|
для: alex1111
(03.02.2012 в 01:04)
| | Так, если вы изучили jquery, тогда Вам советую изучить и json. Потому что, если объединить php+jquery+json получится очень мощная штука. ИМХО. | |
|
|
|