Jump to content

ohno

Members
  • Posts

    127
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by ohno

  1. I've posted on here in the past & had great help so I'm hoping someone can help again Basically what I was trying to do was make the add to cart button grey out and lose the add function if a product is marked as not available in the back end. I found this block of code :- //Displays the add to cart form. Requires product ID $sql = "SELECT code FROM products WHERE productid='".mysql_real_escape_string($_GET['id'])."'"; $result = mysql_query($sql); while ( $row = @mysql_fetch_array($result, MYSQL_BOTH) ) { $data = '<font size="2" face="Verdana, Arial, Helvetica, sans-serif"color="#000000"><form method="post" action="https://www.domain.com/s_addtocart.php" target="_blank"><input type="hidden" name="code" value="'.$row['code'].'" /><input type="image" src="images/add.png" name="Submit" alt="Add To Cart" style="vertical-align:middle; border: none;" />Quantity: <input type="text" name="quantity" size="3" value="1" /></form></font>'; } break; which i then modified as follows & it all works as it should :- //Displays the add to cart form. Requires product ID $sql = "SELECT available, due, code FROM products WHERE productid='".mysql_real_escape_string($_GET['id'])."'"; $result = mysql_query($sql); while ( $row = @mysql_fetch_array($result, MYSQL_BOTH) ) { if ( $row['available'] == '1' ) { $data = '<font size="2" face="Verdana, Arial, Helvetica, sans-serif"color="#000000"><form method="post" action="https://www.domain.com/s_addtocart.php" target="_blank"><input type="hidden" name="code" value="'.$row['code'].'" /><input type="image" src="images/add.png" hspace="5" name="Submit" alt="Add To Cart" style="vertical-align:middle; border: none;" />Quantity: <input type="text" name="quantity" size="3" value="1" /></form></font>'; } elseif ( $row['available'] == '0' ) { $data .= ' <img src="images/addtocartoutofstock.png" width="278" height="39" alt="Sorry, currently out of stock" width="23" height="20"><font color="#C70000" font size="3"><strong>OUT OF STOCK</strong></font><img src="images/outofstock.png" width="23" height="20"> <font size="2" face="Geneva, Arial, Helvetica, sans-serif" color="#000000">'.$row['due']; } } break; So what's the problem? Well, the actual code that is in use for the add to cart buttons actually has view cart, cross selling & cart summary in the code here is the code in use :- //Add to cart, view cart, cart summary, xselling all in one enhancement. Requires product ID $sql = "SELECT code FROM products WHERE productid='".mysql_real_escape_string($_GET['id'])."'"; $result = mysql_query($sql); while ( $row = @mysql_fetch_array($result, MYSQL_BOTH) ) { $prodcode = $row['code']; } $data = '<table border="0"><tr><td colspan="2"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"color="#000000"><form method="post" action="https://www.domain.com/s_addtocart.php" target="_blank"><input type="hidden" name="code" value="'.$prodcode.'" /><input type="image" src="images/add.png" name="Submit" alt="Add To Cart" style="vertical-align:middle; border: none;" hspace="2" /> Quantity: <input type="text" name="quantity" size="3" value="1" /></form></font></td></tr><tr><td><font size="2" face="Verdana, Arial, Helvetica, sans-serif"color="#000000"><a href="https://www.domain.com/cart.php" target="_blank"><img src="images/viewcart.png" alt="View Cart" border="0px" style="vertical-align:middle" hspace="2" /></a></font></td><td>'; $data .= '<font size="2" face="Verdana, Arial, Helvetica, sans-serif"color="#000000">'; if ( !(isset($_SESSION['cartid'])) || ($_SESSION['cartid'] == "") ) //if ( (!isset($_COOKIE['RITD_Cart_ID'])) || ($_COOKIE['RITD_Cart_ID'] == '') ) { $data .= 'No items have been added to the cart yet.'; } else { $sql = "SELECT sub FROM carts WHERE cartid='".$_SESSION['cartid']."'"; //$sql = "SELECT orderno, sub FROM carts WHERE cartid='".$_COOKIE['RITD_Cart_ID']."'"; $result = mysql_query($sql); while ( $row = @mysql_fetch_array($result, MYSQL_BOTH) ) { if ( $row['sub'] == "" ) { $row['sub'] = "0.00"; } $orderno = $orderpre . ($orderstart+$_SESSION['cartid']); $data .= 'Order Number: '.$orderno.' with Sub-Total: £'.$row['sub']; $data = str_replace("&", "&", $data); } } $data .= '</font></td></tr></table>'; $xprods = array(); $sql = "SELECT xselling.xproductid FROM xselling, products WHERE xselling.xproductid=products.productid AND xselling.active='1' AND products.active='1' AND products.live='1' AND xselling.productid='".mysql_real_escape_string($_GET['id'])."'"; //$data .= $sql; $result = mysql_query($sql); while ( $row = @mysql_fetch_array($result, MYSQL_BOTH) ) { array_push($xprods, $row['xproductid']); } if ( (count($xprods) <= 4) && (count($xprods) > 0) ) { $a = 0; $b = count($xprods); while ( $a < $b ) { $sql = "SELECT code, title, img, url, price FROM products WHERE active='1' AND live='1' AND productid='".$xprods[$a]."'"; $result = mysql_query($sql); switch ($a) { case 0: $row = mysql_fetch_assoc($result); $x1 = '<a href="'.$producturl.$row['url'].'" style="color:#0000FF;"><img src="'.$imageurl.$row['img'].'" border="none" alt="'.$row['title'].'" /><br />'.$row['title'].'</a>'; $x1a = '£'.$row['price']; $x1b = '<form method="post" action="https://www.domain.com/s_quickadd.php" target="_blank"><input type="hidden" name="code" value="'.$row['code'].'" /><input type="image" src="images/add.png" name="Submit" alt="Add To Cart" /></form>'; break; case 1: $row = mysql_fetch_assoc($result); $x2 = '<a href="'.$producturl.$row['url'].'" style="color:#0000FF;"><img src="'.$imageurl.$row['img'].'" border="none" alt="'.$row['title'].'" /><br />'.$row['title'].'</a>'; $x2a = '£'.$row['price']; $x2b = '<form method="post" action="https://www.domain.com/s_quickadd.php" target="_blank"><input type="hidden" name="code" value="'.$row['code'].'" /><input type="image" src="images/add.png" name="Submit" alt="Add To Cart" /></form>'; break; case 2: $row = mysql_fetch_assoc($result); $x3 = '<a href="'.$producturl.$row['url'].'" style="color:#0000FF;"><img src="'.$imageurl.$row['img'].'" border="none" alt="'.$row['title'].'" /><br />'.$row['title'].'</a>'; $x3a = '£'.$row['price']; $x3b = '<form method="post" action="https://www.domain.com/s_quickadd.php" target="_blank"><input type="hidden" name="code" value="'.$row['code'].'" /><input type="image" src="images/add.png" name="Submit" alt="Add To Cart" /></form>'; break; case 3: $row = mysql_fetch_assoc($result); $x4 = '<a href="'.$producturl.$row['url'].'" style="color:#0000FF;"><img src="'.$imageurl.$row['img'].'" border="none" alt="'.$row['title'].'" /><br />'.$row['title'].'</a>'; $x4a = '£'.$row['price']; $x4b = '<form method="post" action="https://www.domain.com/s_quickadd.php" target="_blank"><input type="hidden" name="code" value="'.$row['code'].'" /><input type="image" src="images/add.png" name="Submit" alt="Add To Cart" /></form>'; break; } $a++; } } elseif ( count($xprods) > 4 ) { $c = 0; while ( $c < 4 ) { $pick = rand(1,count($xprods)); $pick = $pick - 1; switch ($c) { case 0: $x1 = $xprods[$pick]; break; case 1: $x2 = $xprods[$pick]; break; case 2: $x3 = $xprods[$pick]; break; case 3: $x4 = $xprods[$pick]; break; } unset($xprods[$pick]); $xprods = array_values($xprods); $c++; } $sql = "SELECT code, title, img, url, price FROM products WHERE active='1' AND live='1' AND productid='".$x1."'"; $result = mysql_query($sql); while ( $row = @mysql_fetch_array($result, MYSQL_BOTH) ) { $x1 = '<a href="'.$producturl.$row['url'].'" style="color:#0000FF;"><img src="'.$imageurl.$row['img'].'" border="none" alt="'.$row['title'].'" /><br />'.$row['title'].'</a>'; $x1a = '£'.$row['price']; $x1b = '<form method="post" action="https://www.domain.com/s_quickadd.php" target="_blank"><input type="hidden" name="code" value="'.$row['code'].'" /><input type="image" src="images/add.png" name="Submit" alt="Add To Cart" /></form>'; } $sql = "SELECT code, title, img, url, price FROM products WHERE active='1' AND live='1' AND productid='".$x2."'"; $result = mysql_query($sql); while ( $row = @mysql_fetch_array($result, MYSQL_BOTH) ) { $x2 = '<a href="'.$producturl.$row['url'].'" style="color:#0000FF;"><img src="'.$imageurl.$row['img'].'" border="none" alt="'.$row['title'].'" /><br />'.$row['title'].'</a>'; $x2a = '£'.$row['price']; $x2b = '<form method="post" action="https://www.domain.com/s_quickadd.php" target="_blank"><input type="hidden" name="code" value="'.$row['code'].'" /><input type="image" src="images/add.png" name="Submit" alt="Add To Cart" /></form>'; } $sql = "SELECT code, title, img, url, price FROM products WHERE active='1' AND live='1' AND productid='".$x3."'"; $result = mysql_query($sql); while ( $row = @mysql_fetch_array($result, MYSQL_BOTH) ) { $x3 = '<a href="'.$producturl.$row['url'].'" style="color:#0000FF;"><img src="'.$imageurl.$row['img'].'" border="none" alt="'.$row['title'].'" /><br />'.$row['title'].'</a>'; $x3a = '£'.$row['price']; $x3b = '<form method="post" action="https://www.domain.com/s_quickadd.php" target="_blank"><input type="hidden" name="code" value="'.$row['code'].'" /><input type="image" src="images/add.png" name="Submit" alt="Add To Cart" /></form>'; } $sql = "SELECT code, title, img, url, price FROM products WHERE active='1' AND live='1' AND productid='".$x4."'"; $result = mysql_query($sql); while ( $row = @mysql_fetch_array($result, MYSQL_BOTH) ) { $x4 = '<a href="'.$producturl.$row['url'].'" style="color:#0000FF;"><img src="'.$imageurl.$row['img'].'" border="none" alt="'.$row['title'].'" /><br />'.$row['title'].'</a>'; $x4a = '£'.$row['price']; $x4b = '<form method="post" action="https://www.domain.com/s_quickadd.php" target="_blank"><input type="hidden" name="code" value="'.$row['code'].'" /><input type="image" src="images/add.png" name="Submit" alt="Add To Cart" /></form>'; } } $data .= ' </font> <table border="0" width="600px"> <tr style="background-color: #2658C8; color:#FFFFFF; font-weight: bold; font-size: 15px; font-family:Verdana, Arial, Helvetica, sans-serif;"> <td colspan="4">You may also be interested in these products...</td> </tr> <tr> <td align="center" style="vertical-align:top; font-size: 12px; font-family:Verdana, Arial, Helvetica, sans-serif;">'.$x1.'</td> <td align="center" style="vertical-align:top; font-size: 12px; font-family:Verdana, Arial, Helvetica, sans-serif;">'.$x2.'</td> <td align="center" style="vertical-align:top; font-size: 12px; font-family:Verdana, Arial, Helvetica, sans-serif;">'.$x3.'</td> <td align="center" style="vertical-align:top; font-size: 12px; font-family:Verdana, Arial, Helvetica, sans-serif;">'.$x4.'</td> </tr> <tr> <td align="center" style="font-size: 12px; font-family:Verdana, Arial, Helvetica, sans-serif;">'.$x1a.'</td> <td align="center" style="font-size: 12px; font-family:Verdana, Arial, Helvetica, sans-serif;">'.$x2a.'</td> <td align="center" style="font-size: 12px; font-family:Verdana, Arial, Helvetica, sans-serif;">'.$x3a.'</td> <td align="center" style="font-size: 12px; font-family:Verdana, Arial, Helvetica, sans-serif;">'.$x4a.'</td> </tr> <tr> <td align="center" style="font-size: 12px; font-family:Verdana, Arial, Helvetica, sans-serif;">'.$x1b.'</td> <td align="center" style="font-size: 12px; font-family:Verdana, Arial, Helvetica, sans-serif;">'.$x2b.'</td> <td align="center" style="font-size: 12px; font-family:Verdana, Arial, Helvetica, sans-serif;">'.$x3b.'</td> <td align="center" style="font-size: 12px; font-family:Verdana, Arial, Helvetica, sans-serif;">'.$x4b.'</td> </tr> </table> '; break; I'd like to get that code to work in the same way, ie, if the back end DB has the not available flag set to yes the add to cart button is replaced as in my second code snippet. Hope someone can help! Thanks
  2. I don't know, I didn't write any of this code nor am I a programmer! I'm just trying to fix the mess I've been left with.
  3. You sir are a genius! It now passes the correct amount, will that line of code only affect the $centinel_total string? The tax amount isn't used by them but their logs show an incorrect amount there too, would I just add the same sort of thing above the $centinel_vatamont string?
  4. Hi David, I'm really glad you replied as you helped me out in the past! I lost your contact details as my hard drive failed and the backup I had failed too! I lost all my emails & contacts and baby photo's etc. Anyway, I'll give that a go, I think you are on the right lines as it seems weird why it would all work under £1000 but go completely wrong when £1000 or above. If that doesn't work would you be interested in looking into it for me? Obviously I'll pay you for your time Thanks, Dave
  5. $subtotal = $row[0]; $delivery = $row[1]; $discount = $row[2]; $vatrate = $row[3]; $totalex = str_replace(",","",$subtotal) + str_replace(",","",$delivery); $vatamount = ($totalex - $discount) * ($vatrate/100); $vatamount = number_format($vatamount, 2, '.', ','); $total = $row[4]; $centinel_total = $total * 100; $centinel_delivery = $delivery * 100; $centinel_vatamount = $vatamount * 100; I've got a custom written cart system which for some reason is not passing the correct amounts to our 3D secure processor (Cardinel commerce). I'm not a programmer but looking at how it seems to work I think the issue is with this code. From the processor logs we are passing the tax value with a negative amount and the total is always £1 when the total is above £1000. It all works fine as it should if the total amount is LESS than £1000! Anyone got any ideas what's going on? I'm more than happy to pay someone to fix this!!
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.