Problem with shopcart code
Posted on
16th Feb 2014 07:03 pm by
admin
Hello, I am having a bit of trouble being able to add a product to my shopcart. My mysql database is setup correctly with the tables (User, ShopCart, ShopCartLine, Product, Order, OrderLine, etc.).
Right now I am using mode to pass the item number (productID) to the shopcart. In my switch statement i am essentially getting that item number through the variable $action. The problem is my query doesn't work. Another problem is, I am not really sure of the correct way to setup session variables to be equal to the shopcartID in the shopcart table. More specifically, I'm not exactly sure how I can use the session_id() function to implement this. I currently hard coded a userid (from the user table) instead of passing the value through session. That is another issue which I am not concerned with at the moment. I just want to get this shopcart working in a reasonable fashion.
Can somebody give me an idea of what I am doing wrong and or what I need to do to make this work properly? I am really starting to get lost. By the way, I do plan on adding cases to the switch statement for update and delete. Thanks in advance everyone! Here is the code:
Code: <?php include 'db-inc.php'; ?>
<?php include 'header.php'; ?>
<!-- <html>
<head>
<title>Shopping Cart Contents:</title>
<style type="text/css">
th { background-color: #999;}
.odd_row { background-color: #EEE; }
.even_row { background-color: #FFF; }
</style>
<head>
<body>
<h1> Ecommerce Multimedia Store </h1>
-->
<?php
$action = $_GET['mode'];
$ProductID = $_GET['itemno'];
$session = session_id();
$UserID = 1;
//connect to mysql
$db = mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASSWORD) or
die ('Unable to connect. Check your connection parameters.');
//select database
mysql_select_db(MYSQL_DB) or die(mysql_error($db));
switch ($action) {
case 'add' :
if (!empty($ProductID)) {
$query = 'INSERT INTO ShopCart( UserID )VALUES( $UserID )';
mysql_query($query, $db) or die(mysql_error($db));
$query = ' SELECT ShopCartID FROM ShopCart WHERE UserID = $UserID ORDER BY ShopCartID DESC LIMIT 1'
$query = 'INSERT INTO ShopCartLine(ShopCartID, ProductID, Quantity)VALUES(" . $ShopcartID . '", "' . $ProductID. '", "', "' . $Quantity . '")';
mysql_query($query, $db) or die(mysql_error($db));
}
break;
}
$query = 'SELECT Product.ProductID, Quantity, Title, ListPrice
FROM ShopCartLine JOIN Product ON ShopCartLine.ProductID = Product.ProductID
JOIN ShopCart ON ShopCartLine.ShopCartID=ShopCart.ShopCartID
WHERE ShopCart.ShopCartID = "' . $session . '"
ORDER BY Product.ProductID ASC';
$result = mysql_query($query, $db) or die (mysql_error($db));
$rows = mysql_num_rows($result);
if ($rows == 1) {
echo '<p>You currently have 1 product in your cart.</p>';
} else {
echo '<p>You currently have ' . $rows . ' products in your cart.</p>';
}
if ($rows > 0) {
?>
<table style="width: 75%;">
<tr>
<th style="width: 100px;"> </th><th>Item Name</th><th><Quantity</th>
<th>Price Each</th><th>Extended Price</th>
</tr>
<?php
$total = 0;
$odd = true;
while ($row = mysql_fetch_array($result)) {
echo ($odd == true) ? '<tr class="odd_row">' : '<tr class="even_row">';
$odd = !$odd;
extract($row);
?>
<td><a href="shopcart.php?ProductID=<?php echo $ProductID;?>"><?php
echo $Title; ?></a></td>
<td>
<form method="post" action="shopcartupdate.php">
<div>
<input type="text" name="Quantity" maxlength="2" size="2"
value="<?php echo $Quantity; ?>"/>
<input type="hidden" name="ProductID"
value="<?php echo $ProductID; ?>"/>
<input type="hidden" name="redirect" value="shopcart.php"/>
<input type="submit" name=submit" value="Change Qty"/>
</div>
</form>
</td>
<td style="text-align: right;"> $<?php echo $ListPrice; ?></td>
<td style="text-align: right;"> $<?php echo number_format
($ListPrice * $Quantity, 2); ?>
</td>
</tr>
<?php
$total = $total + $ListPrice * $Quantity;
}
?>
</table>
<p> Your total before shipping is:
<strong>$<?php echo number_format($total, 2); ?></strong></p>
<form method="post" action="checkout.php">
<div>
<input type="submit" name="submit" value="Proceed to Checkout"
style="font-weight: bold;"/>
</div>
</form>
<form method="post" action="shopcartupdate.php">
<div>
<input type="hidden" name="redirect" value="index.php"/>
<input type="submit" name="submit" value="Empty Cart" />
</div>
</form>
<?php
}
?>
<hr/>
<p><a href="index.php">< Back to main page</a></p>
</body>
</html>
<?php include 'footer.php'; ?>
No comments posted yet
Your Answer:
Login to answer
334
20
Other forums
Typing math
I've added support for typesetting math using LaTeX on the forums.
Example:
Code: [Select]
Snapshot from video
anyone knw how to make a snapshot maker from avi n mkv format.
for example if i give a direct lin
Looking for help on using joining mysql tables and php....
Does anyone have any good links to references on how to pull mysql data, through joining tables and
how to populate a drop down box
Hi buddies!
PROCEDURE DOWNLOAD_REPORT_FORM (report_name varchar)
is
begin
DOWNLO
Multidimensional $_POST
Hello
How to get a single array from array of array (2 - dimension).
For example I have a
Remove Rows From Database ad
Hi All,
I have this:
Code: [Select]<?php
session_start();
include('../com
Streaming local file from PHP while it’s been written to by a CURL process
I am creating a simple Proxy server for my website. Why I am not using mod_proxy and mod_cache is a
upload only text files
hi guys i want to upload only text like like (pdf,note pad and ofiice files) so can any one please t
PHP Code To Change Font Color in Table Cell
I would appreciate help with the following snippet of my php code. I am just trying to change the f
Code working in IE but not FireFox
I created a dynamic navigation list for my website based off of a table in my database. The code is