радует обилие собак(
нафиг их.
и еще точный код shop и index
shop.php
<?php
session_start();
include_once(\"db.php\");
$db = new DB(\"localhost\",\"root\",\"\",\"medical\");
if(!$db->open())
{
die($db->error());
}
if(!$db->query(\"SELECT * FROM wares\"))
{
die($db->error());
}
switch(@$_GET[\'action\'])
{ //start switch GET ID
case \"add_basket\":
if(!$db->query(\"SELECT * FROM wares WHERE `id` = \'\".$_GET[\'wares_id\'].\"\' LIMIT 1\"))
{
die($db->error());
}
if($db->numRows() == 1){
$row = $db->fetchAssoc();
if($row[\'status\'] == \"no\")//В БД в поле status укажите : yes - товар доступен,no - не доступен
{
exit(\'<font color=\"#FF0000\">Товар временно не доступен!<br />Извините за неудобства.</font><br /><a href=\"shop.php\">Назад</a>\');
}
$add_new = true;
if(!empty($_SESSION[\'cart\']))
{
foreach ($_SESSION[\'cart\'] AS $key => $item)
{
if ($item[\'id\'] == $row[\'id\'])//Если такой товар уже есть добавляем к количеству,цене и весу
{
$_SESSION[\'cart\'][$key][\'count\'] += 1;
$_SESSION[\'cart\'][$key][\'all_price\'] += $row[\'price\'];
$_SESSION[\'cart\'][$key][\'all_weight\'] += $row[\'weight\'];
$_SESSION[\'count\'] = $_SESSION[\'count\'] += 1;
$_SESSION[\'cart_sum\'] = $_SESSION[\'cart_sum\'];
$_SESSION[\'cart_all_weight\'] = $_SESSION[\'cart_all_weight\'];
$add_new = false;
}
}
}
if ($add_new)
{
$_SESSION[\'cart\'][] = array(\'id\' => $row[\'id\'],\'name_rus\' => $row[\'name_rus\'],\'name_eng\' => $row[\'name_eng\'],\'price\' => $row[\'price\'],\'all_price\' => $row[\'price\'],\'weight\' => $row[\'weight\'],\'all_weight\' => $row[\'weight\'],\'count\' => 1);
if(!$_SESSION[\'count\'])
{
$a = \'0\';
}
else
{
$a = $_SESSION[\'count\'];
}
$_SESSION[\'count\'] = $a += 1;
}
if(!$_SESSION[\'cart_sum\'])
{
$b = \'0\';
}
else
{
$b = $_SESSION[\'cart_sum\'];
}
$_SESSION[\'cart_sum\'] = $b += $row[\'price\'];
if(!$_SESSION[\'cart_all_weight\'])
{
$c = \'0\';
}
else
{
$c = $_SESSION[\'cart_all_weight\'];
}
$_SESSION[\'cart_all_weight\'] = $c += $row[\'weight\'];
}
else
{
exit (\'<font color=\"#FF0000\">Такой товар не существует!</font><br /><a href=\"shop.php\">Назад</a>\');
}
exit (\'<font color=\"#009900\"><b><em>\'.$row[\'name_rus\'].\'</em></b> успешно добавлен в корзину!</font><br /><a href=\"shop.php\">Назад</a>\');
break;
default:
if(!$db->query(\"SELECT * FROM wares\"))
{
die($db->error());
}
print \"<a href=\\\"?action=basket\\\">Ваша корзина</a> | <a href=\\\"?action=clean_basket\\\">Очистить корзину</a><br /><br />\";
while($row = $db->fetchArray())
{
print \'\'.$row[\'name_rus\'].\' - \'.$row[\'price\'].\' USD. - <a href=\\\"?action=add_basket&wares_id=\".$row[\'id\'].\"\\\">Добавить в корзину</a><br />\';
}
break;
case \"basket\":
if(!empty($_SESSION[\'cart\']))
{
print \'В вашей корзине : <b>\'.$_SESSION[\'count\'].\'</b> товар(а)(ов),на сумму <b>\'.$_SESSION[\'cart_sum\'].\' USD</b> и весом <b>\'.$_SESSION[\'cart_all_weight\'].\'</b> грамм<br /><br /><table width=\"546\" border=\"0\" cellpadding=\"1\" cellspacing=\"1\">
<form name=\"form1\" method=\"post\" action=\"?action=edit_count\">
<table width=\"546\" border=\"0\" cellpadding=\"1\" cellspacing=\"1\">
<tr>
<td width=\"147\" height=\"22\" valign=\"top\" bgcolor=\"#bbcfe3\"> <div align=\"center\">Имя</div></td>
<td width=\"116\" valign=\"top\" bgcolor=\"#bbcfe3\"> <div align=\"center\">Количество</div></td>
<td width=\"138\" valign=\"top\" bgcolor=\"#bbcfe3\"> <div align=\"center\">Цена</div></td>
</tr>
\';
foreach ($_SESSION[\'cart\'] as $key => $value )
{
print \' <tr>
<td height=\"55\" valign=\"top\" bgcolor=\"#f1f5f9\" style=\"padding-top:14px;padding-left:4px;padding-right:4px\"><div align=\"center\">\'.$value[\'name_rus\'].\'
<a href=\"?action=del_wares&id=\'.$key.\'\"><font color=\"#FF0000\">[x]</font></a></div></td>
<td valign=\"top\" bgcolor=\"#f1f5f9\" style=\"padding-top:14px\"><div align=\"center\">
<input value = \"\'.$value[\'count\'].\'\" name=\"\'.$key.\'_editcount\" type=\"text\" id=\"\'.$key.\'_editcount\" size=\"5\">
</div></td>
<td valign=\"top\" bgcolor=\"#f1f5f9\" style=\"padding-top:14px;padding-left:4px;padding-right:4px\"><div align=\"center\">\'.$value[\'all_price\'].\'</div></td>
</tr>\';
}
print \'</table>
<br>
<input name=\"refresh_wares\" type=\"submit\" id=\"refresh_wares\" value=\"Обновить\"> <input type=\"button\" onClick=document.location.href=\"shop.php\" value=\"Назад\">
</form><br /><br />
<form name=\"form1\" method=\"post\" action=\"order_show.php\">
<select name=\"select\">
<option value=\"1\">- Zone of delivery</option>
<option value=\"2\">United Kingdom</option>
<option value=\"3\">Albania</option>
<!-- EUROPE -->
<option value=\"4\">Andorra</option>
<option value=\"5\">Armenia</option>
<option value=\"6\">Austria (EU)</option>
<option value=\"7\">Azerbaijan</option>
<option value=\"8\">Azores (EU)</option>
<option value=\"9\">Balearic Islands (EU)</option>
<option value=\"10\">Belarus</option>
<option value=\"11\">Belgium (EU)</option>
<option value=\"12\">Bosnia Herzegovina</option>
<option value=\"13\">Bulgaria (EU)</option>
<option value=\"14\">Canary Islands</option>
<option value=\"15\">Corsica (EU)</option>
<option value=\"16\">Croatia</option>
<option value=\"17\">Cyprus (EU)</option>
<option value=\"18\">Czech Republic (EU)</option>
<option value=\"19\">Denmark (EU)</option>
<option value=\"20\">Estonia (EU)</option>
<option value=\"21\">Faroe Islands</option>
<option value=\"22\">Finland (EU)</option>
<option value=\"23\">France (EU)</option>
<option value=\"24\">Georgia</option>
<option value=\"25\">Germany (EU)</option>
<option value=\"26\">Gibraltar (EU)</option>
<option value=\"27\">Greece (EU)</option>
<option value=\"28\">Greenland</option>
<option value=\"29\">Hungary (EU)</option>
<option value=\"30\">Iceland</option>
<option value=\"31\">Irish Republic (EU)</option>
<option value=\"32\">Italy (EU)</option>
<option value=\"33\">Kazakhstan</option>
<option value=\"34\">Kosovo</option>
<option value=\"35\">Kyrgyzstan</option>
<option value=\"36\">Latvia (EU)</option>
<option value=\"37\">Liechtenstein</option>
<option value=\"38\">Lithuania (EU)</option>
<option value=\"39\">Luxembourg (EU)</option>
<option value=\"40\">Macedonia</option>
<option value=\"41\">Madeira (EU)</option>
<option value=\"42\">Malta (EU)</option>
<option value=\"43\">Moldova</option>
<option value=\"44\">Monaco (EU)</option>
<option value=\"45\">Montenegro</option>
<option value=\"46\">Netherlands (EU)</option>
<option value=\"47\">Norway</option>
<option value=\"48\">Poland (EU)</option>
<option value=\"49\">Portugal (EU)</option>
<option value=\"50\">Romania (EU)</option>
<option value=\"51\">Russia</option>
<option value=\"52\">San Marino</option>
<option value=\"53\">Serbia</option>
<option value=\"54\">Slovakia (EU)</option>
<option value=\"55\">Slovenia (EU)</option>
<option value=\"56\">Spain (EU)</option>
<option value=\"57\">Spitzbergen</option>
<option value=\"58\">Sweden (EU)</option>
<option value=\"59\">Switzerland</option>
<option value=\"60\">Tajikistan</option>
<option value=\"61\">Turkey</option>
<option value=\"62\">Turkmenistan</option>
<option value=\"63\">Ukraine</option>
<option value=\"64\">Uzbekistan</option>
<option value=\"65\">Vatican City State</option>
<!-- END EUROPE -->
<option value=\"66\">Australia</option>
<!-- THE REST OF THE WORLD -->
<option value=\"67\">Belau (Palau)</option>
<option value=\"68\">China – People’s Republic (inc. Tibet)</option>
<option value=\"69\">East Timor</option>
<option value=\"70\">Fiji</option>
<option value=\"71\">French Southern & Antarctic Territories (Surface Mail only)</option>
<option value=\"72\">French Polynesia</option>
<option value=\"73\">Guam</option>
<option value=\"74\">Japan</option>
<option value=\"75\">Kiribati</option>
<option value=\"76\">Korea (Democratic People’s Republic)</option>
<option value=\"77\">Korea (Republic of)</option>
<option value=\"78\">Marshall Islands</option>
<option value=\"79\">Micronesia (Federated States)</option>
<option value=\"80\">Mongolia</option>
<option value=\"81\">Nauru Islands</option>
<option value=\"82\">New Caledonia</option>
<option value=\"83\">New Zealand</option>
<option value=\"84\">New Zealand Island Territories</option>
<option value=\"85\">Norfolk Island</option>
<option value=\"86\">North Mariana Island</option>
<option value=\"87\">Papua New Guinea</option>
<option value=\"88\">Philippines</option>
<option value=\"89\">Pitcairn Island</option>
<option value=\"90\">Samoa (American)</option>
<option value=\"91\">Solomon Islands</option>
<option value=\"92\">Taiwan</option>
<option value=\"93\">Tonga</option>
<option value=\"94\">Tuvalu</option>
<option value=\"95\">Vanuatu</option>
<option value=\"96\">Wake Island</option>
<option value=\"97\">Wallis and Futuna Islands</option>
<option value=\"98\">Western Samoa</option>
<!-- END THE REST OF THE WORLD -->
</select><br /><br />
<input type=\"submit\" name=\"Submit\" value=\"Оформить заказ\">
</form>\';
}
else
{
print \'В вашей корзине нет товаров <br /><a href=\"shop.php\"><b><<</b></a>\';
}
break;
case \"clean_basket\":
$_SESSION[\'cart\'] = array();
$_SESSION[\'count\'] = array();
$_SESSION[\'cart_sum\'] = array();
$_SESSION[\'cart_all_weight\'] = array();
header(\'Location: shop.php\');
break;
case \"del_wares\":
if(!empty($_SESSION[\'cart\']))
{
$_SESSION[\'cart_sum\'] = $_SESSION[\'cart_sum\'] - $_SESSION[\'cart\'][\'\'.$_GET[\'id\'].\'\'][\'all_price\'];
$_SESSION[\'cart_all_weight\'] = $_SESSION[\'cart_all_weight\'] - $_SESSION[\'cart\'][\'\'.$_GET[\'id\'].\'\'][\'all_weight\'];
$_SESSION[\'count\'] = $_SESSION[\'count\'] - $_SESSION[\'cart\'][\'\'.$_GET[\'id\'].\'\'][\'count\'];
unset($_SESSION[\'cart\'][\'\'.$_GET[\'id\'].\'\']);
header(\'Location: shop.php?action=basket\');
}
break;
case \"edit_count\":
foreach($_SESSION[\'cart\'] as $key => $value)
{
if(strlen($_POST[\'\'.$key.\'_editcount\']) == \"0\" or 0 > intval($_POST[\'\'.$key.\'_editcount\']) or !preg_match(\"([1-9])\",\"\".intval($_POST[\'\'.$key.\'_editcount\']).\"\"))
{
exit(\'<font color=\"#FF0000\">Значение не должно быть отрицательным</font><br /><a href=\"?action=basket\">Назад</a>\');
}
if($_POST[\'\'.$key.\'_editcount\'] == \"0\")
{
$_SESSION[\'cart_sum\'] = $_SESSION[\'cart_sum\'] - $_SESSION[\'cart\'][$key][\'all_price\'];
$_SESSION[\'cart_all_weight\'] = $_SESSION[\'cart_all_weight\'] - $_SESSION[\'cart\'][$key][\'all_weight\'];
$_SESSION[\'count\'] = $_SESSION[\'count\'] - $_SESSION[\'cart\'][$key][\'count\'];
unset($_SESSION[\'cart\'][$key]);
}
else{
$_SESSION[\'cart\'][$key][\'count\'] = intval($_POST[\'\'.$key.\'_editcount\']);
unset($_POST[\'refresh_wares\']);
$count_sum = array_sum($_POST);
$_SESSION[\'count\'] = $count_sum;
$_SESSION[\'cart\'][$key][\'all_price\'] = intval($_POST[\'\'.$key.\'_editcount\']) * $_SESSION[\'cart\'][$key][\'price\'];
$a_b[] = intval($_POST[\'\'.$key.\'_editcount\']) * $_SESSION[\'cart\'][$key][\'price\'];
$_SESSION[\'cart\'][$key][\'all_weight\'] = intval($_POST[\'\'.$key.\'_editcount\']) * $_SESSION[\'cart\'][$key][\'weight\'];
$s[] = intval($_POST[\'\'.$key.\'_editcount\']) * $_SESSION[\'cart\'][$key][\'weight\'];
}
$_SESSION[\'cart_all_weight\'] = array_sum($s);
//print_r ($s);
$_SESSION[\'cart_sum\'] = array_sum($a_b);
}
header(\"Location: ?action=basket\");
break;
}
$db->freeResult();
$db->close();
?>
index.php
include \'shop.php\';