mancroft Posted June 30, 2003 Share Posted June 30, 2003 Direct add cart url link not working I am doing a simple shopping cart which works (code below)BUT... when i click on the add item to cart link it works and produces a url: blah/cart.php?action=add_item&id=4&qty=1 Now, what I would like to do is link the url to a button in flash so that people can click directly and add a specific item. I know how to do that but when i try to change the add_item&id=1 to add_item&id=2 or whatever, the thing does not work properly. Any ideas please? The cart file: <?php include(\"db.php\"); switch($_GET[\"action\"]) { case \"add_item\": { AddItem($_GET[\"id\"], $_GET[\"qty\"]); ShowCart(); break; } case \"update_item\": { UpdateItem($_GET[\"id\"], $_GET[\"qty\"]); ShowCart(); break; } case \"remove_item\": { RemoveItem($_GET[\"id\"]); ShowCart(); break; } default: { ShowCart(); } } function AddItem($itemId, $qty) { // Will check whether or not this item // already exists in the cart table. // If it does, the UpdateItem function // will be called instead global $dbServer, $dbUser, $dbPass, $dbName; // Get a connection to the database $cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName); // Check if this item already exists in the users cart table $result = mysql_query(\"select count(*) from cart where cookieId = \'\" . GetCartId() . \"\' and itemId = $itemId\"); $row = mysql_fetch_row($result); $numRows = $row[0]; if($numRows == 0) { // This item doesn\'t exist in the users cart, // we will add it with an insert query @mysql_query(\"insert into cart(cookieId, itemId, qty) values(\'\" . GetCartId() . \"\', $itemId, $qty)\"); } else { // This item already exists in the users cart, // we will update it instead UpdateItem($itemId, $qty); } } function UpdateItem($itemId, $qty) { // Updates the quantity of an item in the users cart. // If the qutnaity is zero, then RemoveItem will be // called instead global $dbServer, $dbUser, $dbPass, $dbName; // Get a connection to the database $cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName); if($qty == 0) { // Remove the item from the users cart RemoveItem($itemId); } else { mysql_query(\"update cart set qty = $qty where cookieId = \'\" . GetCartId() . \"\' and itemId = $itemId\"); } } function RemoveItem($itemId) { // Uses an SQL delete statement to remove an item from // the users cart global $dbServer, $dbUser, $dbPass, $dbName; // Get a connection to the database $cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName); mysql_query(\"delete from cart where cookieId = \'\" . GetCartId() . \"\' and itemId = $itemId\"); } function ShowCart() { // Gets each item from the cart table and display them in // a tabulated format, as well as a final total for the cart global $dbServer, $dbUser, $dbPass, $dbName; // Get a connection to the database $cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName); $totalCost = 0; $result = mysql_query(\"select * from cart inner join items on cart.itemId = items.itemId where cart.cookieId = \'\" . GetCartId() . \"\' order by items.itemName asc\"); ?> <html> <head> <title> Your Shopping Cart </title> <script language=\"JavaScript\"> function UpdateQty(item) { itemId = item.name; newQty = item.options[item.selectedIndex].text; document.location.href = \'cart.php?action=update_item&id=\'+itemId+\'&qty=\'+newQty; } </script> </head> <body bgcolor=\"#ffffff\"> <h1>Your Shopping Cart</h1> <form name=\"frmCart\" method=\"get\"> <table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\"> <tr> <td width=\"15%\" height=\"25\" bgcolor=\"red\"> <font face=\"verdana\" size=\"1\" color=\"white\"> <b>Qty</b> </font> </td> <td width=\"55%\" height=\"25\" bgcolor=\"red\"> <font face=\"verdana\" size=\"1\" color=\"white\"> <b>Product</b> </font> </td> <td width=\"20%\" height=\"25\" bgcolor=\"red\"> <font face=\"verdana\" size=\"1\" color=\"white\"> <b>Price Each</b> </font> </td> <td width=\"10%\" height=\"25\" bgcolor=\"red\"> <font face=\"verdana\" size=\"1\" color=\"white\"> <b>Remove?</b> </font> </td> </tr> <?php while($row = mysql_fetch_array($result)) { // Increment the total cost of all items $totalCost += ($row[\"qty\"] * $row[\"itemPrice\"]); ?> <tr> <td width=\"15%\" height=\"25\"> <font face=\"verdana\" size=\"1\" color=\"black\"> <select name=\"<?php echo $row[\"itemId\"]; ?>\" onChange=\"UpdateQty(this)\"> <?php for($i = 1; $i <= 20; $i++) { echo \"<option \"; if($row[\"qty\"] == $i) { echo \" SELECTED \"; } echo \">\" . $i . \"</option>\"; } ?> </select> </font> </td> <td width=\"55%\" height=\"25\"> <font face=\"verdana\" size=\"1\" color=\"black\"> <?php echo $row[\"itemName\"]; ?> </font> </td> <td width=\"20%\" height=\"25\"> <font face=\"verdana\" size=\"1\" color=\"black\"> $<?php echo number_format($row[\"itemPrice\"], 2, \".\", \",\"); ?> </font> </td> <td width=\"10%\" height=\"25\"> <font face=\"verdana\" size=\"1\" color=\"black\"> <a href=\"cart.php?action=remove_item&id=<?php echo $row[\"itemId\"]; ?>\">Remove</a> </font> </td> </tr> <?php } // Display the total ?> <tr> <td width=\"100%\" colspan=\"4\"> <hr size=\"1\" color=\"red\" NOSHADE> </td> </tr> <tr> <td width=\"70%\" colspan=\"2\"> <font face=\"verdana\" size=\"1\" color=\"black\"> <a href=\"products.php\"><< Keep Shopping</a> </font> </td> <td width=\"30%\" colspan=\"2\"> <font face=\"verdana\" size=\"2\" color=\"black\"> <b>Total: $<?php echo number_format($totalCost, 2, \".\", \",\"); ?></b> </font> </td> </tr> </table> </form> </body> </html> <?php } ?> The products list file: <?php // This page will list all of the items // from the items table. Each item will have // a link to add it to the cart include(\"db.php\"); // Get a connection to the database $cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName); $result = mysql_query(\"select * from items order by itemName asc\"); ?> <html> <head> <title> Product List </title> </head> <body bgcolor=\"#ffffff\"> <h1>Products</h1> <table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\"> <tr> <td width=\"30%\" height=\"25\" bgcolor=\"red\"> <font face=\"verdana\" size=\"1\" color=\"white\"> <b>Product</b> </font> </td> <td width=\"10%\" height=\"25\" bgcolor=\"red\"> <font face=\"verdana\" size=\"1\" color=\"white\"> <b>Price</b> </font> </td> <td width=\"50%\" height=\"25\" bgcolor=\"red\"> <font face=\"verdana\" size=\"1\" color=\"white\"> <b>Description</b> </font> </td> <td width=\"10%\" height=\"25\" bgcolor=\"red\"> <font face=\"verdana\" size=\"1\" color=\"white\"> <b>Add</b> </font> </td> </tr> <?php while($row = mysql_fetch_array($result)) { ?> <tr> <td width=\"30%\" height=\"25\"> <font face=\"verdana\" size=\"1\" color=\"black\"> <?php echo $row[\"itemName\"]; ?> </font> </td> <td width=\"10%\" height=\"25\"> <font face=\"verdana\" size=\"1\" color=\"black\"> $<?php echo $row[\"itemPrice\"]; ?> </font> </td> <td width=\"50%\" height=\"25\"> <font face=\"verdana\" size=\"1\" color=\"black\"> <?php echo $row[\"itemDesc\"]; ?> </font> </td> <td width=\"10%\" height=\"25\"> <font face=\"verdana\" size=\"1\" color=\"black\"> <a href=\"cart.php?action=add_item&id=<?php echo $row[\"itemId\"]; ?>&qty=1\">Add Item</a> </font> </td> </tr> <tr> <td width=\"100%\" colspan=\"4\"> <hr size=\"1\" color=\"red\" NOSHADE> </td> </tr> <?php } ?> <tr> <td width=\"100%\" colspan=\"4\"> <font face=\"verdana\" size=\"1\" color=\"black\"> <a href=\"cart.php\">Your Shopping Cart >></a> </font> </td> </tr> </table> </body> </html> Link to comment https://forums.phpfreaks.com/topic/657-direct-add-cart-url-link-not-working/ Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.